1

我想覆盖特定活动的应用程序主题,但它不适合我

这是我的 Manifest.xml 上的代码:

 <application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/Theme.Sherlock.Light" >
    <activity
        android:theme="@style/MyTheme"
        android:name="com.ssdevnet.Splash"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity 
    android:name="com.ssdevnet.Home"
    android:label="@string/app_name" />
</application>

这就是我在风格中使用的:

<style name="MyTheme" parent="Theme.Sherlock.Light.DarkActionBar">
        <item name="android:windowNoTitle">true</item>
    </style>

它仍然无法在 Android 2.3.6 或更低版本上运行,但在 3 及更高版本上运行。

我还尝试在该特定页面的类文件的 oncreate 方法上使用它:

requestWindowFeature(Window.FEATURE_NO_TITLE);// Removes title bar
  getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,     WindowManager.LayoutParams.FLAG_FULLSCREEN);    // Removes notification bar

但它不适用于我运行 Android 2.3.6 的手机,但它适用于运行 Jellybean 的模拟器,我需要适用于所有版本的东西。

而且我需要知道一些事情,因为我是 android 的新手:我们可以定义一个全局主题,并在某些活动上覆盖该主题吗?如果是,我们可以使用什么方法?

或者如果我们针对的是活动而不是应用程序,我们必须为每个活动定义主题?

我也想了解如何在应用程序中部署自定义主题。如果有一些好的教程和参考,请分享。

提前致谢!

4

1 回答 1

1

在调用 setContentView(...) 和 super.oncreate() 之前尝试使用 setTheme(..),它应该可以在 Activity 中正常工作。

查看Android 开发者网站了解更多信息。

于 2013-06-02T17:43:24.900 回答