setContentView выдает исключение

В моем приложении для Android я установил

this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN ); Тогда мое событие сенсорного экрана больше не работает.

Дальнейшее объяснение,

У меня есть кнопка, и onClick изменяет contentView с помощью setContentView(R.layout.choose_player);. Это работает нормально. Но если вы переместите фокус на кнопку с помощью трекбола (сделав ее желтой) и нажмите на нее, это дает исключение.

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); 
}

person Sukitha Udugamasooriya    schedule 19.05.2010    source источник


Ответы (2)


вы используете setContentView только один раз в своем методе onCreate, как правило, для главного окна (одно действие = 1 представление)

в вашем случае вам, вероятно, следует изменить свой фон ..

person Vasile Surdu    schedule 23.04.2011

я не могу понять правильно сначала. Я думаю, вы можете использовать метод setContentView несколько раз. один из них - установить макет в представлении. еще один внутри события клика. правильно? что не работает. используйте этот метод один раз, чтобы установить макет. в событии щелчка вы должны выполнять свои задачи в представлениях внутри макета. Надеюсь, поможет. пожалуйста, опубликуйте несколько фрагментов кода для идеальных ответов.

person Praveen    schedule 19.05.2010