2014-12-30 61 views
-2

我正在編寫一個需要在TextView上使用setText()的android應用,這應該很簡單,但每當應用崩潰時它就會到達該方法。據我所知,我有另外一個應用程序,它的編碼完全相同,(當然,除了變量名稱),它可以工作。我最好的猜測是它與引用有關,但我已經檢查了那些我知道如何檢查的東西。setText方法崩潰Android應用

這裏是我的XML佈局代碼:

<TextView 
    android:id="@+id/test" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="Yay!" /> 

而且我的Java活動代碼:

package com.example.campgames; 

import android.app.Activity; 
import android.os.Bundle; 
import android.view.Menu; 
import android.view.View; 
import android.widget.CheckBox; 
import android.widget.TextView; 
import android.widget.Toast; 

public class MainActivity extends Activity { 

TextView test; 
CheckBox lowerElem; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    test=(android.widget.TextView)findViewById(R.id.test); 
    lowerElem=(CheckBox)findViewById(R.id.lower_elem); 

} 

public void click(View view){ 
    test.setText(R.string.inside); 
    setContentView(R.layout.activity_results); 
} 

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    // Inflate the menu; this adds items to the action bar if it is present. 
    getMenuInflater().inflate(R.menu.main, menu); 
    return true; 
} 

} 

感謝您的幫助,讓我知道,如果我做任何事錯誤。第一次海報!

+1

可能重複[setText(getString(R.strings.whatever)或setText(R.strings.whatever)?](http://stackoverflow.com/questions/10120867/settextgetstringr-strings-whatever-or-settextr -strings-whatever) –

+0

我不認爲「test.setText(R.string.inside)」是崩潰的實際原因。 –

+1

http://stackoverflow.com/questions/23353173/uncomfort-myapp-has-stopped-how -can-i-solve-this – laalto

回答

0

試試這個....

public void click(View view){ 
     test.setText(getResources().getString(R.string.inside)); 
    } 

快樂編碼:-)

0

試試這個:

test.setText(getResources().getString(R.String.mycar)); 

,而不是

test.setText(R.string.inside); 
0

從點擊刪除此行() 方法。

setContentView(R.layout.activity_results); 
+0

它不需要刪除它,它不會崩潰你的應用程序。 –

1

嘗試使用

String textToSet = (String) yourContext.getResources().getText(R.string.inside); test.setText(textToSet);

1

試試這個:

公共無效點擊(查看視圖)的getString {
test.setText(getResources()(R.string.inside ));

}

代替

test.setText(R.string.inside);