0
データを取得するために私のカスタムクラスで動くことがあります。 Webサービスからデータを取得するためのカスタムクラスを1つ作成しましたが、シングルトンクラスを使用しようとすると問題が発生します。DataReader.getInstance(getContext(), this)
を使用すると、リストビューはアプリ起動時に初めて作成されます。しかし、私はここ..DataReaderクラスの問題点
をいつでもの私のDataReaderの作業罰金の新しいインスタンスを使用している場合、私のDataReaderクラス:後続の呼び出しでは
public class CategoriasFragment extends Fragment implements Data_Listener{
private Categorias_Adapter adapter;
private ArrayList<Categoria> list = new ArrayList<>();
private ExpandableListView listView;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_categorias, container, false);
listView = (ExpandableListView) view.findViewById(R.id.exp_list);
listView.setOnChildClickListener(new ExpandableListView.OnChildClickListener() {
@Override
public boolean onChildClick(ExpandableListView parent, View v,int groupPosition, int childPosition, long id) {
if(list.size()>0){
if(list.get(groupPosition).getSubCategorias().size()>0){
SubCategoria subCategoria = list.get(groupPosition).getSubCategorias().get(childPosition);
Log.d(General.appname, subCategoria.getNombre());
}
}
return true;
}
});
//This work only the first time
//DataReader.getInstance(getContext(), this).Categorias_fill();
//This work everytime
DataReader dataReader = new DataReader(getContext(), this);
dataReader.Categorias_fill();
return view;
}
@Override
public void onBindData(ArrayList<Object> objects) {
list = (ArrayList) objects;
adapter = new Categorias_Adapter(getContext(), list);
listView.setAdapter(adapter);
}