Вызов requestWindowFeature() после onCreate()

Как уже упоминалось в нескольких ответах, вызов requestWindowFeature(Window.FEATURE_NO_TITLE) должен быть до super.onCreate(...) и setContentView(...). Тем не менее, я хочу, чтобы заголовок экрана отображался при создании активности и исчезал только после возвращения из другого действия. Я попробовал это:

public void onActivityResult(int requestCode, int resultCode, Intent data) { switch (requestCode) { case REQUEST_CONNECT_DEVICE: requestWindowFeature(Window.FEATURE_NO_TITLE); }
}

И я получаю android.util.AndroidRuntimeException: requestFeature() must be called before adding content исключения android.util.AndroidRuntimeException: requestFeature() must be called before adding content.

1 ответ

// try this way,hope this will help you....
Note : i think what you trying do is not possible so try this alternative.
public class FirstActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { if(!getIntent().getBooleanExtra("isTitleShow",true)){ requestWindowFeature(Window.FEATURE_NO_TITLE); } super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // this condition for stop to call SecondActivity after one time call if(getIntent().getBooleanExtra("isTitleShow",true)){ Intent intent = new Intent(this,SecondActivity.class); startActivity(intent); finish(); } }
}
public class SecondActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Intent intent = new Intent(this,MainActivity.class); intent.putExtra("isTitleShow",false); startActivity(intent); }
}

licensed under cc by-sa 3.0 with attribution.