我制作了一个自定义标题栏,我希望它出现在我的应用程序中的所有活动中。它在我的主要活动中完美运行:
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
setContentView(R.layout.main);
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.title_bar);
但是我的主要活动调用了另一个活动,当我尝试在那里做同样的事情时它失败了:
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
setContentView(R.layout.layout_2);
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.title_bar);
尝试执行findViewById()崩溃,我将其中一个包裹在 try/catch 中以查看发生了什么:
TextView tv1;
try {
tv1 = (TextView)findViewById(R.id.header);
}
catch (Exception e) {
Log.d("MyActivity2", "boom");
}
异常说 cause=ClassCastException detailMessage=android.widget.RelativeLayout
我不知道这意味着什么,注意如果我注释掉requestWindowFeature()和getWindow()调用没有问题。
提前感谢您对此的任何见解!