我有两个自定义动态列表视图,一个在导航视图中,一个在主布局中,例如
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<ListView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/jobs">
</ListView>
</LinearLayout>
<android.support.design.widget.NavigationView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
android:id="@+id/nav_view">
<LinearLayout
android:layout_width="match_parent"
android:orientation="vertical"
android:layout_height="match_parent">
<ListView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/Subjects"
android:choiceMode="singleChoice"
android:listSelector="#ADADAD"
>
</ListView>
</LinearLayout>
</android.support.design.widget.NavigationView>
我正在使用View Model的watch函数来填充两个列表,类似这样。两个列表都使用相同的数据库填充
activityViewModel.getAllGroups().observe(this, new Observer<List<String>>() {
@Override
public void onChanged(@Nullable List<String> strings) {
Groups = strings;
navDrawListAdapter.setGroups(strings);
}
});
activityViewModel.getAllActivites().observe(this, new Observer<List<Activity>>() {
@Override
public void onChanged(@Nullable List<Activity> activities) {
mactivities = activities;
tasksListAdapter.setmTasks(activities);
}
});
现在,只要有人单击导航抽屉中的列表,我都希望其他列表仅显示与所选行相对应的相关项目。
例如如果在导航抽屉中选择了“火车”,我只想显示 “类型”为“火车”的物品
我尝试为导航列表适配器设置onClickListener,并尝试更新另一个适配器上的数据,但是这使列表每次单击都会更改,如果我单击其他导航元素,则会使列表为空>
void setmTasks(List<Activity> activities,String Typename){
mTasks = activities;
for(int i=0;i<activities.size();i++)
if(!activities.get(i).getType().equals(Typename))
mTasks.remove(activities.get(i));
notifyDataSetChanged();
}
我该怎么做
预先感谢
答案 0 :(得分:0)
https://github.com/rey5137/material,此参考可能会帮助您在滑动菜单元素中单击DrawerAdapter并转到选定的视图页面
var marker = new ol.Feature({
geometry: new ol.geom.Point(ol.proj.transform([16.9071388, 52.4901917], 'EPSG:4326', 'EPSG:3857')),
});
主要活动