具有自定义行的 Android 适配器,与活动列表视图进行通信

发布于 2024-12-05 10:53:02 字数 824 浏览 0 评论 0原文

我有一个带有列表视图的活动。

listview 的底部,我有一个“所选项目”textview 和一个保存按钮。 列表视图使用具有多个文本字段和单选按钮的适配器。 我了解如何为适配器中的单选按钮添加单击事件。 我需要知道如何获取适配器中的点击事件以更新 textview 中的“所选项目”。

编辑 9/19

添加代码

listView1.setOnItemClickListener(new OnItemClickListener() {

@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
    PlanListObj pl = planAdapter.getItem(position);
    switch (view.getId()) {
        case R.id.radioButton1:
    selection.setText("Radio: " + pl.getPlanName());
    break;
        default:
    selection.setText("Row: " + pl.getPlanName());
    }
     }
});

如果我单击自定义行上的单选按钮,则 R.id.radioButton1 情况无效,大概是因为单选按钮正在发送 onClick ,而不是 OnItemClick

预先感谢

吉姆

I have an activity with a listview.

At the bottom of the listview I have a 'Selected item' textview and a save button.
the list view uses an adapter with multiple text fields and a radio button.
I understand how to add click events for the radio buttons in the adapter.
I need to know how to get the click events in the adapter to update the 'Selected item' in the textview.

Edit 9/19

Code Added

listView1.setOnItemClickListener(new OnItemClickListener() {

@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
    PlanListObj pl = planAdapter.getItem(position);
    switch (view.getId()) {
        case R.id.radioButton1:
    selection.setText("Radio: " + pl.getPlanName());
    break;
        default:
    selection.setText("Row: " + pl.getPlanName());
    }
     }
});

If I click the radio button on the custom row the R.id.radioButton1 case is not valid, presumably as the radio button is sending an onClick, not an OnItemClick.

Thanks in advance

Jim

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

岁月静好 2024-12-12 10:53:02

首先,我希望您开始接受答案:)

这很简单,因为您可以在主要活动中使用:

yourListView.setOnItemClickListener(new OnItemClickListener(){
    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
        //here you can update the textview and get the selected value from the view or position
    }
});

First I hope you start accepting answers :)

This is simple because you can use in your main activity:

yourListView.setOnItemClickListener(new OnItemClickListener(){
    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
        //here you can update the textview and get the selected value from the view or position
    }
});
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文