在我的Android应用程序中,我设置了
this.getWindow()。setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); 然后我的触摸屏事件不再起作用了。
进一步解释,
我有一个按钮,onClick它通过setContentView(R.layout.choose_player);更改contentView。 它工作正常。但是如果你通过轨迹球将焦点转移到按钮上(使其变黄)并点击它,它会给出异常。
java.lang.IllegalArgumentException:参数必须是此视图的后代
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.main1);
}
public void onClick(View v) {
setContentView(R.layout.main2);
}
答案 0 :(得分:2)
我先不能正确理解。我想你可能多次使用setContentView方法。一种是在视图上设置布局。 click事件中的另一个。对?那不行。使用该方法一次来设置布局。在click事件上,您必须在布局内的视图上执行任务。希望能帮助到你。请发布一些代码片段以获得完美的答案。
答案 1 :(得分:0)
你在'onCreate'方法中只使用一次setContentView,一般用于主窗口(一个Activity = 1视图)
在你的情况下你应该改变你的背景..