java - 如何创建 onitemclick 监听器以打开另一个 ListView

标签 java android listview

嗨,我在这里显示了类中存在的方法,所以现在我想当我单击时
该方法必须在另一个布局中显示其参数,因此我 创建了另一个 Activity 和布局,但无法与 with 连接
onitemclick。

public class Listview extends Activity{
       private ListView listView;     
       // public ItemClickListener clicklistener = new ItemClickListener();

private ListView lv;
public static ArrayList<String> your_array_list = new ArrayList<String>();
@Override
protected void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);
    setContentView(R.layout.listview);
    lv = (ListView) findViewById(R.id.listView1);
    Button backButton=(Button)findViewById(R.id.methodbackbutton1);
    ((ListView) findViewById (R.id.parameter_listview)).setOnItemClickListener (this);

      OnItemClickListener clicklistener;
    //listView.setOnItemClickListener(clicklistener);
    //listView = (ListView) findViewById(R.id.parameter_listview);
    lv.setOnItemClickListener(new OnItemClickListener()
    {
        @Override
        public void onItemClick(AdapterView<?> a, View v, int position, long id) 
        {
             // In the following line "v" refers to the View returned by the `getView()` method; meaning the clicked View.
             TextView txtName = (TextView)v.findViewById(R.id.paramlistView1);
             String name = txtName.getText().toString();



             }

        }
    );
  backButton.setOnClickListener(new OnClickListener() {

最佳答案

您必须使用 intent 来切换 Activity,并使用 putExtra 将值从当前 Activity 传递到下一个 Activity。

lv.setOnItemClickListener(new OnItemClickListener()
    {
        @Override
        public void onItemClick(AdapterView<?> a, View v, int position, long id) 
        {
             // In the following line "v" refers to the View returned by the `getView()` method; meaning the clicked View.
             TextView txtName = (TextView)v.findViewById(R.id.paramlistView1);
             String name = txtName.getText().toString();
             Intent in = new Intent(this, NextActivity.class);
             in.putExtra("name" , name);
             startActivity(in);
             }
        }
    );

在第二个 Activity onCreate() 中,您必须从 intent 获取值,如下所示:

String name = getIntent().getString("name");

关于java - 如何创建 onitemclick 监听器以打开另一个 ListView ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23425981/

相关文章:

android - 如何在xml布局中显示TextView

android - 如何在 Android 中通过 pubdate 对 Listview 中的 xml 进行排序

android - 在 ListView 中放置一个自定义 View

java - 关于Java中调用子类方法

java - 从 Jersey Rest 服务启动时,PhantomJS 返回黑色屏幕截图

java - 有没有关于 dl4j 和 cuda 支持这个问题的解决方案?

android - 如何使用单个适配器在回收器 View 中加载不同的布局

Javafx 导航栏问题

Android Camera.Parameters.getZoomRatios() 只返回 1 个值

Android ListView 过度滚动问题