2011-09-27 66 views
1
ERROR/AndroidRuntime(545):  at no.jarle.f02.myActivity.onClick(myActivity.java:38) 


public void onClick(View v) 
{ 
    tvTextView.setText(editText1.getText()); <--- line 38 
} 


<application android:icon="@drawable/icon" android:label="@string/app_name"> 
    <activity android:name=".myActivity" 
       android:label="@string/app_name"> 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 

當點擊按鈕時,TextView應顯示在EditText中鍵入的文本用戶。 相反,它顯然崩潰,我似乎無法找到問題。 任何幫助,非常感謝:)Android onClick中的NullPointerException

+3

嘗試調試它 - 是'tvTextView' null或'editText1'空? –

+0

他們超出了範圍..現在感覺很蠢。 thnx丹尼爾:) – jarlo

+0

我發佈了這個答案。 –

回答

0

我的猜測是你有空editText1當你點擊按鈕。因此,在設置文本之前,請確保您在editText1中有某些內容。例如

if (editText1.getText().length>0) 
    tvTextView.setText(editText1.getText()); 
0

也許你的TextView和/或EditText上僅在onCreate方法實例化和他們沒有對你的onClick方法「生命」。

你的班是這樣的嗎?

Class YourClass { 

private EditText editText1; 

private TextView tvTextView; 

public void `onCreate`(Bundle arg) { 

    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main) 

    editText1 = (EditText) findViewById(R.id.editText1); 
    tvTextView = (TextView) findViewById(R.id.tvTextView); 
} 

public void onClick(View v) { 
    tvTextView.setText(editText1.getText()); 
} 

如果你的TextView和EditText不是屬性,你不能在onClick上操作它們。

或者您可以在嘗試setText之前使用findViewById在onClick方法上獲取它們的實例。

1

使用此:

if (editText1.getText().toString().trim() > 0) 

    tvTextView.setText(editText1.getText().toString()); 
相關問題