我有EditText
用户输入名称,我希望将此名称分配给字符串变量供以后使用。
EditText et=(EditText)findViewById(R.id.editText1);
final String value=et.getText().toString();
Button b=(Button)findViewById(R.id.button1);
b.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
TextView tv=(TextView)findViewById(R.id.textView2);
tv.setText(value);
}
});
这是我正在使用的代码。我在editText中输入了一些文本,当我单击按钮时,textView应该在edittext中显示内容。但是当我单击按钮时,textview变得不可见,即它具有null
值。
答案 0 :(得分:2)
更改onClick中的字符串值初始化,目前您在获得editText引用后立即初始化它...因此它不会更新为您在运行时输入的文本
新代码
final EditText et=(EditText)findViewById(R.id.editText1);
Button b=(Button)findViewById(R.id.button1);
b.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
String value=et.getText().toString();
TextView tv=(TextView)findViewById(R.id.textView2);
tv.setText(value);
}
});
答案 1 :(得分:0)
尝试这样的事情
final EditText et=(EditText)findViewById(R.id.editText1);
final EditText tv=(EditText)findViewById(R.id.editText2);
Button b=(Button)findViewById(R.id.button1);
b.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
tv.setText(et.getText().toString());
}
});
答案 2 :(得分:0)
试试这个
String value;
OnCreate(){
EditText et=(EditText)findViewById(R.id.editText1);
TextView tv=(TextView)findViewById(R.id.textView2);
Button b=(Button)findViewById(R.id.button1);
b.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
value=et.getText().toString();
tv.setText(value);
}
});
}