2012-02-09 68 views
0

在eclipse/android AVD中,我收到「不幸已停止」Java Android Eclipse AVD「不幸的是,<項目名稱>已停止。」

我已經檢查過其他問題,但沒有任何幫助。

我認爲這是我的代碼是錯誤的,因爲當我評論代碼時,它運行良好。但是,android代碼檢查器thingy顯示沒有錯誤。

這是我的代碼:

public TextView TextView; 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    setTextView(); 
} 

public void setTextView(){ 
    TextView tv = (TextView); 
    findViewById(R.id.textView1); 
    tv.setText("4"); 
} 

我想這藏漢,但同樣的事情發生

public TextView TextView; 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    TextView tv = (TextView); 
    findViewById(R.id.textView1); 
    tv.setText("4"); 
} 

我不知道我的代碼的結構是否正確兩種。

回答

2
TextView tv = (TextView); 

使tvnull當你這樣做tv.set...它拋出NullPointerException

請嘗試以下代碼。

TextView tv = (TextView)findViewById(R.id.textView1); 
    tv.setText("4"); 
1

「然而,Android的代碼檢查啄未顯示任何錯誤。」

如果您指的是eclipse在運行之前突出顯示代碼中的錯誤的方式,它不會捕獲像這樣的錯誤。你的錯誤是一個運行時錯誤,這意味着你的代碼完全能夠編譯。

ecplise所做的檢查只會捕獲導致您的代碼無法編譯的錯誤(主要是拼寫錯誤)。

要捕捉運行時錯誤,您需要打開ecplise中的Logcat視圖,並在應用程序運行/關閉時監視日誌。

那裏會有一個堆棧跟蹤,解釋發生了什麼。

相關問題