android - ListView onItemClick 从数据库中获取行?

标签 android listview

我是 Android 开发的新手。我有一个自定义 ListView,其中填充了来自 DatabaseTable 的数据。 ListView 项目由类别、日期、标题和金额组成。

private class lvIncomeListener implements AdapterView.OnItemClickListener {

    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {

        String item = ???;
        displayItemClicked("List-item Clicked:",item);

    }
}

现在,我想向 ListView 添加一个 OnItemClickListener,这样当单击列表中的项目时,DialogFragment 将显示 ListView 中显示的数据库中特定行的数据,例如

“点击的项目:类别:食物,日期:17/10/25,标题:餐厅,金额:20sek”

...实现这一目标的最佳方式是什么?

最佳答案

因为你有一个自定义适配器,我假设你有一个自定义类,你可以在其中存储你的列表数据,可能是这样的:

public class YourListData {

    private String catagory;
    private String date;

    public YourListData(){
    }


    public void setCatagory(String cat){ this.catagory = cat; }
    public void setDate(String date){ this.date = date; }

    public String getCatagory(){ return this.catagory; }
    public String getDate() { return this.date; }
}

现在在 ActivityonItemClick 方法中获取列表数据,如下所示:

mYourListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
        YourListData data = (YourListData) parent.getItemAtPosition(position);
        String cat = data.getCatagory();
        String date = data.getDate();
        //...

        //Send data to your fragment
    }
});

关于android - ListView onItemClick 从数据库中获取行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46940559/

相关文章:

android c2dm导航jumpNote源码

android - 通过 Intent with Image (Photo) 插入联系人 (ContactsContract)

java - 如何使用两个按钮实现多个日期选择器功能并保存选择的那些日期?

android - 如何从其适配器刷新 listView

Android Fedor 的延迟加载将图像传递给其他 Activity

c# - 如何从另一个项目启动 Activity

android - android :icon ="@drawable/my_icon" and android:icon ="?my_icon"?之间的区别

java - Android ListView 像 Twitter 列表一样滑动操作

android - 当我们在 ListView 中点击它时如何展开列表行

json - 可以向 ListModel 添加复杂类型项吗?