我在 onCreate
中初始化 View ,有时在最小化应用程序后,对于某些用户来说, View 为 null
。我无法重现这个错误。 GuiReceiver
是更新 Activity View 的接收器。
这是我的简化代码:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.player_activity);
tvTitle = (TextView) findViewById(R.id.title);
}
@Override
protected void onResume() {
super.onResume();
if (tvTitle != null)
FirebaseCrash.log("onResume - tvTitle != null");
else
FirebaseCrash.log("onResume - tvTitle == null");
IntentFilter filter = new IntentFilter();
filter.addAction(CommonConstatns.GUI_UPDATE_ACTION);
if (receiver == null) {
receiver = new GuiReceiver();
receiver.setPlayerActivity(this);
}
}
@Override
protected void onPause() {
super.onPause();
if (receiver != null) {
unregisterReceiver(receiver);
FirebaseCrash.log("GUIReceiver unregistered");
}
}
<activity
android:name=".activity.PlayerActivity"
android:launchMode="singleTask"
android:screenOrientation="userPortrait" />
最佳答案
除非 tvTitle 被声明为类的实例变量,否则我会将以下代码行移至 onResume 方法中:
tvTitle = (TextView) findViewById(R.id.title);
关于android - onResume 中 View 为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41745982/