问题: 在进入界面的时候,界面能够接收成功的加载数据,切换界面也是第二个界面也是正常加载数据的,但是如果点击的导航栏是当前所在的界面,按道应该是刷新当前界面,但是刷新后数据却不能渲染到界面上面,测试的时候发现数据成功获取到了,但是就是不能加载
这个底部菜单栏是用android studio里面创建activity自动生成的 Bottom Navigation Activity
这个函数是用学号查询考试成绩,页面中用的
private void getGrade(String snumber){
Gson gson = new Gson();
JsonObject query = new JsonObject();
query.addProperty("snumber",snumber);
Call task = req.post("/grade_vue/selectrsubject", gson.toJson(query));
task.enqueue(new Callback() {
@Override
public void onFailure(@NonNull Call call, @NonNull IOException e) {
}
@Override
public void onResponse(@NonNull Call call, @NonNull Response response) throws IOException {
if (response.isSuccessful()) {
Type gradeListType = new TypeToken<ArrayList<HashMap<String,Object>>>(){}.getType();
ArrayList<HashMap<String,Object>> back = gson.fromJson(response.body().string(),gradeListType);
arr.clear();
arr.addAll(back);
Message msg = new Message();
msg.what = Request.MSG_GRADE_INFO;
mHandler.sendMessage(msg);
}
}
});
}
这个是页得到消息后刷新adapt的
private Handler mHandler = new Handler(Looper.getMainLooper()){
@Override
public void handleMessage(@NonNull Message msg) {
if(msg.what == Request.MSG_GRADE_INFO){
adapter.notifyDataSetChanged();
}
}
};