以上代码,是一个recyclerview设置了六个数据,请根据服务端返回的数据中的action,去进行选中设置相对应的数据,{ "subFocus": "", "opration": "", "postResult": "success", "extras": null, "focus": "map", "intent": "selectPreference", "operation": "", "object": { "api": "selectPreference", "action": "route_plan_preference_notoll" }, "playMode": "" }服务端返回的数据
时间: 2023-07-17 14:09:57 浏览: 64
根据您提供的服务端返回的数据,您可以根据`object`字段中的`action`来选中相应的数据。
首先,您可以在`initRouteSortList()`方法中遍历路线排序列表`mRouteSortList`,找到与服务端返回的`action`相匹配的项,并将其选中。
以下是修改后的代码示例:
```java
private void selectPreferItem(String action) {
for (int i = 0; i < mRouteSortList.size(); i++) {
RouteSortModel model = mRouteSortList.get(i);
if (model.getAction().equals(action)) {
model.setSelected(true);
break;
}
}
}
private void initRouteSortList() {
mRouteSortList = new ArrayList<>();
mRouteSortList.add(new RouteSortModel("智能推荐", IBNRoutePlanManager.RoutePlanPreference
.ROUTE_PLAN_PREFERENCE_DEFAULT));
mRouteSortList.add(new RouteSortModel("时间优先", IBNRoutePlanManager.RoutePlanPreference
.ROUTE_PLAN_PREFERENCE_TIME_FIRST));
mRouteSortList.add(new RouteSortModel("少收费", IBNRoutePlanManager.RoutePlanPreference
.ROUTE_PLAN_PREFERENCE_NOTOLL));
mRouteSortList.add(new RouteSortModel("躲避拥堵", IBNRoutePlanManager.RoutePlanPreference
.ROUTE_PLAN_PREFERENCE_AVOID_TRAFFIC_JAM));
mRouteSortList.add(new RouteSortModel("不走高速", IBNRoutePlanManager.RoutePlanPreference
.ROUTE_PLAN_PREFERENCE_NOHIGHWAY));
mRouteSortList.add(new RouteSortModel("高速优先", IBNRoutePlanManager.RoutePlanPreference
.ROUTE_PLAN_PREFERENCE_ROAD_FIRST));
// 根据服务端返回的数据选中对应的项
String action = "route_plan_preference_notoll"; // 替换为服务端返回的action
selectPreferItem(action);
}
private void selectPreferItem(String action) {
for (int i = 0; i < mRouteSortList.size(); i++) {
RouteSortModel model = mRouteSortList.get(i);
if (model.getAction().equals(action)) {
model.setSelected(true);
break;
}
}
}
```
在`initRouteSortList()`方法中,调用`selectPreferItem(action)`方法,并将服务端返回的`action`作为参数传入。`selectPreferItem()`方法会遍历路线排序列表,并找到与`action`匹配的项,并将其设置为选中状态。
请注意,您需要将代码中的示例的`action`值替换为实际从服务端返回的数据中的`action`值。
希望能帮到您!如果还有其他问题,请随时提问。