我想获取列表视图中的项目以编辑另一个活动中的文本。 单击列表视图项时,我想在编辑文本中转移另一个活动中的项目。
答案 0 :(得分:2)
你必须像那样制作listview的onItemClickListner。
listView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Intent i = new Intent(getApplicationContext(), SecondActivity.class);
i.putExtra("new_variable_name","value");
startActivity(i);
}
});
然后在新的Activity中,检索这些值:
Bundle extras = getIntent().getExtras();
if (extras != null) {
String value = extras.getString("new_variable_name");
}
最后将Value设置为editText,就像这样
editText.setText(value);
希望这会对你有所帮助。
答案 1 :(得分:0)
lstView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
Intent intent = new Intent(getActivity(), NewActivity.class);
intent.putExtra("text", text want to transfer);
startActivity(intent);
}
});
答案 2 :(得分:0)
您可以使用SharedPreferences。当您将ListView的内容传递给下一个活动时,您可以使用editText.setText("Your Text")
。
您还可以通过调用新活动的意图传递数据。
答案 3 :(得分:0)
像这样创建onClick
方法。
ListView list = (ListView) findViewById(R.id.newsList);
list.setAdapter(adapter);
list.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int position, long offset) {
NewsItem item = (NewsItem) adapter.getItem(position);
Intent intent = new Intent(getApplicationContext(), NewsDetailsActivity.class);
intent.putExtra(KEY, item.getHeadline());
startActivity(intent);
}
});
在下一个活动中
Intent intent = getIntent();
headline = intent.getStringExtra(KEY);
看看here