我的SplashActivity标题很长,因此在设备主屏幕上的启动图标下方会被截断。

我希望在启动图标下方显示一个较短的标题,但在活动的操作栏中显示一个较长的标题。

因此,为实现这一目标,我在清单中指定了一个较短的标题...

<activity
        android:name=".SplashActivity"
        android:label="@string/app_name_short"
        android:launchMode="singleTop" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>


...我正在使用...

setTitle(getString(R.string.app_name));


...在onCreate()SplashActivity方法中,以便完整标题显示在操作栏中。

它有效,但是仅在大约1秒钟的延迟之后。 (因此,当显示SplashActivity时,它将显示简短标题1秒钟,然后再更改为较长标题。)

有什么办法可以解决此问题或任何已知的解决方法?

我还尝试过创建PreSplashActivity(带有短标题)作为启动活动,包括立即启动SplashActivity(带有长标题)的代码,但是PreSplashActivity仍然显示1秒钟(即使它不会调用setContentView(),所以我有些困惑。

有任何想法吗?

最佳答案

post回答的mark Renouf中,它知道intent-filters可以具有label属性,如果不存在,则标签是从父组件继承的

关于android - Android-如何避免在 Activity 的onCreate()中调用setTitle()时出现延迟,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28109257/

10-10 09:09