android 标题、全屏问题

occur 发布于 2012/02/22 09:55
阅读 2K+
收藏 0

在一个android项目里,如果有一个视图设为全屏无标题,是不是其他的视图也都跟着是全屏无标题?

如果我已经设计一些视图为全屏无标题,而又想设计一些非全屏有标题,这时后该如何做?

requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

上面好像不行,会报错:

android.util.AndroidRuntimeException: You cannot combine custom titles with other title features

加载中
0
迷途d书童
迷途d书童

首先,不是设置一个视图全屏无标题就其他视图也跟着全屏无标题;
你可以在AndroidManifest.xml中的application标签设置android:theme="@android:style/Theme.NoTitleBar.Fullscreen",这样所有视图都是全屏无标题;
如果想一些视图为全屏无标题,一些非全屏有标题,那就在要全屏无标题的activity标签中设置;

<activity android:name=".Main" 	android:theme="@android:style/Theme.NoTitleBar.Fullscreen"/>

o
occur
谢谢! 原来我在application里已经android:theme="@android:style/Theme.NoTitleBar.Fullscreen"了 所以都是全屏的,唉,对自己无语了!
0
o
occur
掐着秒表静待大虾的到来!!!
0
LiangX
LiangX

你这是自定义的Titile? 

如果你想让整个应用的视图都是无标题的,可以使用android:windowNoTitle这个样式的主题,在AndroidManifest.xml中的Application元素中配置

o
occur
不是自定义的,很纠结,貌似我在该视图什么也没设计,但它就是全屏的,我以为是因为别的视图设为全屏所以它也跟着全屏!
0
迷途d书童
迷途d书童
public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		
		//设置无标题
		requestWindowFeature(Window.FEATURE_NO_TITLE);
		//设置全屏
		getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
				WindowManager.LayoutParams.FLAG_FULLSCREEN);
		
		setContentView(R.layout.main);
}
在代码中设置的话,设置无标题和设置全屏的两段代码要放置在 setContentView(R.layout.main); 这段代码的前面。要不然会报错。

o
occur
@迷途ф書童 : 谢谢,ok了。 原来连 requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); 都不要加,加了反而显示不了标题!
迷途d书童
迷途d书童
@occur : 不要加你写的那段代码,直接在activity标签里配置就行了:<activity android:name=".Main" android:label="反馈"/>
o
occur
再问下如何设计一个视图的标题名? requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); getWindow().setTitle("反馈"); getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); 貌似不行,标题显示为空!
o
occur
我是要设计为有标题非全屏, requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); 这样会报上面的错,如果我什么也不加,它自己会是全屏的,而这不是我要的。
0
LiangX
LiangX

这个异常信息的意思是custom title feature与其他的windows titles 特性不能同时使用

我估计你为这个Activity设置了类似android:windowNoTitle的属性。去掉就ok了

实现你这样的需求可以在需要全屏的activity单独配置theme,也不那么麻烦

返回顶部
顶部