Android 单击按钮后更新编辑文本
此EditText位于作为主活动内TabHost一部分的活动内。它应该是4个选项卡,每个选项卡上有一个EditText和两个按钮,一个用于递增,一个用于递减EditText字段。但是,如果我试图在其中一个编辑文本框上设置text(),应用程序就会崩溃。因此,当我在onCreate()中调用setText()时,它崩溃了。任何帮助都将不胜感激Android 单击按钮后更新编辑文本,android,button,android-edittext,Android,Button,Android Edittext,此EditText位于作为主活动内TabHost一部分的活动内。它应该是4个选项卡,每个选项卡上有一个EditText和两个按钮,一个用于递增,一个用于递减EditText字段。但是,如果我试图在其中一个编辑文本框上设置text(),应用程序就会崩溃。因此,当我在onCreate()中调用setText()时,它崩溃了。任何帮助都将不胜感激 <EditText android:label="@+id/LifeForP1" android:layout_width="wrap
<EditText
android:label="@+id/LifeForP1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:autoText="true"
android:cursorVisible="false"
android:background="@null"
android:textColor="#999999"
android:color="@null"
android:layout_x="90px"
android:layout_y="0px"
android:textSize="250px"
android:maxLength="3"
android:capitalize="sentences"
android:layout_weight="1"
android:freezesText="true"
android:text="20"
/>
public class ActivityTab1 extends Activity {
private EditText lifeView;
int p1Life = 20;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.content1layout);
lifeView = (EditText) findViewById(R.id.LifeForP1);
lifeView.setText(getString(R.string.lifeStart)); //Error here
}
@Override
protected void onResume() {
super.onResume();
}
public void p1GainLifeListener(View view) {
AlertDialog alertDialog = new AlertDialog.Builder(this).create();
alertDialog.setTitle("test gain 1");
alertDialog.show();
//String show = String.format("", Integer.toString(++p1Life));
//lifeView.setText(show);
}
公共类活动选项卡1扩展活动{
私有文本视图;
int p1Life=20;
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.content1layout);
lifeView=(EditText)findViewById(R.id.LifeForP1);
lifeView.setText(getString(R.string.lifeStart));//此处出错
}
@凌驾
受保护的void onResume(){
super.onResume();
}
公共无效p1GainLifeListener(视图){
AlertDialog AlertDialog=新建AlertDialog.Builder(this.create();
alertDialog.setTitle(“测试增益1”);
alertDialog.show();
//String show=String.format(“,Integer.toString(++p1Life));
//lifeView.setText(show);
}
在xml中,更改
android:label=“@+id/LifeForP1”
to
android:id=“@+id/LifeForP1”
在引用的代码中绑定EditBox时
findViewById(R.id.LifeForP1);
这意味着EditBox需要一个ID
如果将android:label
更改为android:id
,则代码将正常运行
android:id="@+id/LifeForP1"
findViewById(R.id.LifeForP1);