我完全按照此链接how to get edittext value and store it on textview开展工作。看到这段代码
@Override
public void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.feedback);
youButton=(Button)findViewById(R.id.btn1);
youButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
myEditText=(EditText)findViewById(R.id.edittext1);
textView=(TextView)findViewById(R.id.textview3);
String result = myEditText.getText().toString();
textView.setText(result);
}
});
}}
我写了我的名字它打印我的名字“sanjay”。第二次我输入“kumar”它应该打印像这样
库马尔
桑杰
我第三次在edittext“King”中写。它应该是打印
景
库马尔
桑杰
请帮帮我。
答案 0 :(得分:1)
编写以下代码。
youButton=(Button)findViewById(R.id.btn1);
myEditText=(EditText)findViewById(R.id.edittext1);
textView=(TextView)findViewById(R.id.textview3);
youButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
String result = myEditText.getText().toString()+"\n"+textView.getText().toString();
textView.setText(result);
}
});
<强>建议强>
每次onClick
执行时,都不应初始化任何视图。最好在之前进行初始化,就像你为Button
所做的那样。
答案 1 :(得分:0)
尝试以下方法:
textView.setText(result.replace(" ", "\n"));
答案 2 :(得分:0)
使用StringBuilder并在每次点击监听器
时附加StringBuilder sb = new StringBuilder();
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
myEditText=(EditText)findViewById(R.id.edittext1);
textView=(TextView)findViewById(R.id.textview3);
String result = myEditText.getText().toString();
sb.append(result+"\n");
textView.setText(sb.toString());
}
答案 3 :(得分:0)
尝试以下代码。
String s = "";
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button b = (Button) findViewById(R.id.button1);
b.setOnClickListener(new OnClickListener() {
public void onClick(View arg0) {
EditText e = (EditText) findViewById(R.id.editText1);
TextView tv = (TextView) findViewById(R.id.textView1);
s = e.getText().toString() + "\n" + s;
tv.setText(s);
e.setText("");
}
});
}
我希望这会对你有所帮助。