2016-10-13 45 views
0

這是我在這個平臺上的第一篇文章,如果我做錯了,請原諒我。 這些代碼可以在eclipse中無誤地運行,當應用程序在手機上運行並單擊該按鈕時,應用程序退出並顯示「不幸,***已停止」。首先,我認爲我的手機與該程序不兼容,所以我使用了該模擬器並得到了相同的結果。editText.getText()。toString() - 無法在android中運行

這是代碼:

public class MainActivity extends Activity implements OnClickListener{ 

    private Button button; 
    private EditText editText; 

    @Override 
    protected void onCreate(Bundle savedInstanceState){ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.text_layout); 

    button = (Button) findViewById(R.id.test_button); 
    editText =(EditText) findViewById(R.id.edit_text); 
    button.setOnClickListener(this); 

    } 

    @Override 
    public void onClick(View v){ 
     switch (v.getId()){ 
     case R.id.test_button: 
      String inputText = editText.getText().toString(); 
      Toast.makeText(MainActivity.this, inputText, Toast.LENGTH_SHORT).show(); 
      break; 
     default: 
      break; 
     } 
    } 

}

String inputText = editText.getText().toString() 通過String inputText = hello取代,這將是在手機上成功地與 「你好」 興田點擊按鈕時運行。 謝謝你幫我解決這個問題

<Button 
    android:id="@+id/test_button" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:text="Button"/> 

<EditText 
    android:name="@+id/edit_text" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:hint="Type something here" 
    android:maxLines="2" 
    /> 

+4

NullPointerException異常,最有可能的。請添加logcat。 http://stackoverflow.com/questions/23353173/uncomfort-myapp-has-stopped-how-can-i-solve-this –

+3

另外,你的問題,包括'text_layout.xml',或至少確保那就是你想爲你的活動使用的佈局 –

+1

你是否檢查過editText不是null? –

回答

-2

試試這個:

if(editText.getText().toString().trim().length()!=0){ 
    String inputText = editText.getText().toString(); 
} 
else{ 
    //what you want to do if the edit text is empty 
} 
+0

顯然這不會幫助。事情是edittext不能處理它的任何方法操作,可能是因爲它是空的。 –

+0

@NileshSingh editText.getText();不會返回null。當它正確初始化時,editText變量如何可以爲null。這是我的疑問。 –

+0

可能是上下文不正確的問題,問題中的代碼沒有說明資源文件指向的上下文(活動)。只有logcat可以說明問題,但是當應用程序崩潰時,您的方法無用。由於代碼只使用edittext中的字符串作爲Toa​​st消息,因此不存在任何空字符串檢查可以執行的操作。 –

相關問題