我面临着TextView在android 中设置文本的问题,我的代码是:
public class Main extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button button = (Button) findViewById(R.id.button1);
final TextView text = (TextView) findViewById(R.id.textView1);
final EditText input = (EditText) findViewById(R.id.editText1);
final String string = input.getText();
button.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
text.setText(string);
}
});
}
}
Run Code Online (Sandbox Code Playgroud)
如果我写
final Editable string = input.getText();
Run Code Online (Sandbox Code Playgroud)
然后它工作..... !!!!
现在我想发送EditText到下一个的数据,Activity如下所示:
public class Main extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button button = (Button) findViewById(R.id.button1);
final TextView text = (TextView) findViewById(R.id.textView1);
final EditText input = (EditText) findViewById(R.id.editText1);
final Editable string = input.getText();
button.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
Intent intent = new Intent(Main.this, Second.class);
intent.putExtra("thetext", string);
startActivity(intent);
}
});
}
}
Run Code Online (Sandbox Code Playgroud)
在Second.java课堂上我这样得到StringExtra:
public class Second extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.second);
TextView text = (TextView) findViewById(R.id.textView2);
String string = getIntent().getExtras().getString("thetext", "not found");
text.setText(string); /// Here the text is not shown but the default message "not found" is set to `TextView`
}
}
Run Code Online (Sandbox Code Playgroud)
请指导我继续开发.
问题应该是,你要发送Editable,而不是String.试试这个:
final String string = input.getText().toString();
Run Code Online (Sandbox Code Playgroud)
我认为问题是你实际上在意图中放置了“可编辑”,而不是字符串。虽然很接近,但它们不是同一件事。如果您使用 toString() 您的可编辑来获取 String 对象并将其放入意图中,您应该能够像您所做的那样使用 getString 将其取回。
| 归档时间: |
|
| 查看次数: |
36600 次 |
| 最近记录: |