从数据列表中查找RecyclerView中项目的位置

时间:2018-03-04 18:17:42

标签: java android android-recyclerview recycler-adapter

我想从RecyclerView的数据集中获取RecyclerView中项目的位置。我的数据集中的每个项目都包含唯一ID 。我想在RecyclerView中找到与数据集中的id对应的项的适配器位置。

我的数据集类如下所示。

class dataset {
    int id;
    JSONArray linked;
    int type;
    ....
}

我根据类型将TextViewEditText添加到RecyclerView

最终目标:我的RecyclerView可以有多个独立的EditTextTextViews(尽管TextView会有一个id为{{1}的字段它链接到)。当我点击EditText时,我将使用TextView(数据集)的ID来获取数据。我想从EditText中的项目中获取相应EditText的文字。如果我可以从数据集中获取适配器位置,我可以使用

RecyclerView

但是无法从数据集中获取适配器位置。

1 个答案:

答案 0 :(得分:1)

Hashmap<Integer,Integer> map = new Hashmap<>();
ArrayList<dataset> main_list ; // it contains all objects of dataset

for(int i = 0; i < main_list.size(); i++) {
    int id = main_list.get(i).getId(); // id of the model
    map.put(id, i); // i is the position of adapter
}

地图包含适配器位置以及每个模型的ID ..