将Theme.NoTitleBar应用于应用程序时,在特定活动上获取标题栏

时间:2013-05-29 09:51:25

标签: android themes android-manifest titlebar

假设我有一个将android:theme="@android:style/Theme.NoTitleBar"应用于清单中的应用程序元素的Android应用程序。

对于特定活动,是否有可能偏离此应用程序范围的主题并且以声明方式(即通过清单)获取该活动的标题栏?

感谢。

2 个答案:

答案 0 :(得分:1)

在致电特定活动setTheme(..)setContentView(...)之前使用super.oncreate()

@Override
    protected void onCreate(Bundle savedInstanceState) {
        //set Theme here
        setTheme(android.R.style.Theme_DeviceDefault_Light);

        super.onCreate(savedInstanceState);      
        setContentView(R.layout.activity_main);

                .....
}

答案 1 :(得分:1)

@ arun-c-thomas提出的非声明性解决方案让我走上了正确的道路:

应用@android:style/Theme.DeviceDefault会恢复无标题栏主题。它并不理想,因为它应用了一个完整的主题,也可以恢复其他可能已经存在的自定义,但在我的情况下,这不是问题。