如何将listview中单击的项目传输到android中另一个活动的editText

时间:2015-11-25 10:18:27

标签: android listview android-listview

我想获取列表视图中的项目以编辑另一个活动中的文本。 单击列表视图项时,我想在编辑文本中转移另一个活动中的项目。

4 个答案:

答案 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)

  1. 像这样创建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); 
        }
    });
    
  2. 在下一个活动中

    Intent intent = getIntent();
    headline = intent.getStringExtra(KEY);
    
  3. 看看here