我正在编写一个需要在TextView上使用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;
}
}
感谢您的帮助,如果我做错了,请告诉我。第一次海报!
答案 0 :(得分:1)
尝试使用
String textToSet = (String) yourContext.getResources().getText(R.string.inside);
test.setText(textToSet);
答案 1 :(得分:1)
试试这个:
public void click(查看视图){
test.setText(getResources()的getString(R.string.inside));
}
而不是
test.setText(R.string.inside);
答案 2 :(得分:0)
试试这个......
public void click(View view){
test.setText(getResources().getString(R.string.inside));
}
快乐编码: - )
答案 3 :(得分:0)
试试这个:
test.setText(getResources().getString(R.String.mycar));
而不是
test.setText(R.string.inside);
答案 4 :(得分:0)
从click()方法中删除此行。
setContentView(R.layout.activity_results);