java - 全局 ArrayList 变量返回空
问题描述
我有一个全局ArrayList
称为分区,在我的方法中getMutableCountryLiveData()
我更新了这个 ArrayList。然后在setUpButton()
我调用相同ArrayList
的 . 这应该作为其全局变量。但是,ArrayList
返回是空的。任何想法为什么会这样?谢谢
代码:
public class PlannerResultsFragment extends Fragment {
private ArrayList<Country> cities = new ArrayList<>();
private MutableLiveData<List<List<Country>>> mutableLiveData = new MutableLiveData<>();
private View view;
private ArrayList<Integer> days = new ArrayList<>();
private List<List<Country>> partitions = new ArrayList<>();
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
fragmentPlannerResultsBinding = DataBindingUtil.inflate(inflater, R.layout.fragment_planner_results,container,false);
view = inflater.inflate(R.layout.fragment_planner_results, container, false);
getMutableCountryLiveData()
setUpButton();
return fragmentPlannerResultsBinding.getRoot();
}
public MutableLiveData<List<List<Country>>> getMutableCountryLiveData() {
final TriposoAPI userDataService = RetrofitClient.getService();
Call<InitialResponse> call = userDataService.getPlannerResults(city_input,persona_input,items_input);
call.enqueue(new Callback<InitialResponse>() {
@Override
public void onResponse(Call<InitialResponse> call, Response<InitialResponse> response) {
InitialResponse cityResponse = response.body();
if (cityResponse != null && cityResponse.getResults() != null) {
cities = (ArrayList<Country>) cityResponse.getResults();
int partitionSize = 2;
for (int i=0; i < cities.size(); i += partitionSize) {
partitions.add(cities.subList(i, Math.min(i + partitionSize, cities.size())));
}
mutableLiveData.setValue(partitions);
}
}
@Override
public void onFailure(Call<InitialResponse> call, Throwable t) {
}
});
return mutableLiveData;
}
public void setUpButton(){
for (int i = 0; i < partitions.size(); i++){
days.add(i);
}
}
}
解决方案
推荐阅读
- forms - Angular 8 模板驱动验证
- google-apps-script - GAS 错误:“无效参数(第 3 行,“代码”)
- mysql - MySQL:从子查询到单个查询
- arduino - 使用 Arduino 了解电池的电量百分比
- excel - 键入不匹配错误而不显示错误行
- python - 为什么 Python while 循环不能正常工作
- forms - 如何在scala表单标签中添加onsubmit
- android - 使用 Firebase Auth 登录 Facebook:开发人员错误
- angular - 每当我将新数据传递给子组件时,ngx-pagination 就会中断
- android - 带有导航图的导航抽屉不起作用