簡體   English   中英

將點擊的項目ID從列表視圖傳遞給活動

[英]Pass clicked item id from listview to activity

我正在使用意圖putExtra將listview單擊的項目ID發送到另一個活動,並使用getIntent()獲得活動中的值。 我在Listview上單擊一個名稱,它為我提供了有關先前添加成員的詳細信息。 沒有給我有關點擊姓名的人的詳細信息。

我的列表視圖活動。

        adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,result);
        listContent.setAdapter(adapter);
        listContent.setTextFilterEnabled(true);

        c.close();

        listContent.setOnItemClickListener(this);
    }
    @Override
    public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
        Intent myIntent = new Intent(Activity.this, details.class);
        myIntent.putExtra("id", id);
        startActivity(myIntent);
    }

這是我的第二項活動。

 @Override
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_details);

    int value= getIntent().getIntExtra("id",0);

我希望當我在列表視圖中單擊一個名稱時,它會在第二個活動中為我提供相同名稱的詳細信息。 但是這段代碼為我提供了在點擊名稱上方的列表視圖中放置人員的詳細信息。 謝謝

嘗試這個。

 adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,result);
        listContent.setAdapter(adapter);
        listContent.setTextFilterEnabled(true);

        c.close();

        listContent.setOnItemClickListener(this);
    }
    @Override
    public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
        Intent myIntent = new Intent(Activity.this, details.class);
        myIntent.putExtra("id", id);
        startActivities(new Intent[]{myIntent});
    }

第二項活動。

 private int value;

 @Override
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_details);
        Intent intent = getIntent();
        if (intent.getExtras() != null) {
            value = intent.getExtras().getInt("id");
        }
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM