嘗試呼叫虛擬方法:空白物件參考
問題:
從🎜>問題:
發生異常是因為LoginActivity 在活動完全初始化並完全初始化並完全初始化並且準備好之前嘗試存取視圖(例如,EditText、TextView)。在 LoginActivity 的建構子中呼叫了 findViewById(),但在 onCreate() 中未明確呼叫 setContentView(...)。
解決方案:protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_login); usernameField = (EditText) findViewById(R.id.username); passwordField = (EditText) findViewById(R.id.password); error = (TextView) findViewById(R.id.error); progress = (ProgressBar) findViewById(R.id.progress); }要解決此問題,之後在onCreate() 中初始化視圖字段setContentView(...):
最佳化建議:
new Handler().postDelayed(new Runnable() { @Override public void run() { Intent intent = new Intent(SplashActivity.this, LoginActivity.class); startActivity(intent); finish(); } }, 1500);考慮使用Handler而不是 Timer 來安排意圖轉換。 Timer 在後台執行緒上執行 TimerTask,在這種情況下應該避免這種情況。 Handler 將確保任務在 UI 執行緒上執行。
以上是為什麼我的 Android 應用程式在轉換活動時會崩潰並顯示'嘗試在空物件參考上呼叫虛擬方法...”?的詳細內容。更多資訊請關注PHP中文網其他相關文章!