У меня есть адаптер массива, простирающийся от базового блока и использующий его с arraylist для хранения данных. Мне нужно обновить отдельный элемент. Поэтому мне нужно указать идентификатор для каждого элемента при добавлении в arraylist. Затем я его обновлю с set
способом, как это:Arrayadapter пользовательский идентификатор
randomsList.set(position,new Random(user,1));
Я имею в виду мне нужно место value.Somebody сказал, что нужно сделать орудие map
для this.But я не знаю, как я могу сделать it.I нужен пример.
Это мой класс:
private static class Randoms{
private List<Random> randoms=null;
public Randoms(List<Random> randoms) {
this.randoms=randoms;
}
public Random get(int position) {
return randoms.get(position);
}
public int size() {
return randoms.size();
}
}
И это мой адаптер:
private static class RandomsAdapter extends BaseAdapter{
private Randoms randoms;
private LayoutInflater inflater;
private Context context;
private RandomsAdapter(Context context,Randoms randoms) {
this.randoms=randoms;
this.inflater = LayoutInflater.from(context);
this.context=context;
}
public void updateRandoms(Randoms randoms) {
this.randoms=randoms;
notifyDataSetChanged();
}
@Override
public int getCount() {
return randoms.size();
}
@Override
public Random getItem(int position) {
return randoms.get(position);
}
@Override
public long getItemId(int position) {
return 0;
}
public View getView(int position,View convertView,ViewGroup parent) {
}
}
http://stackoverflow.com/questions/25715154/arraylist-custom-location/25715387 Можете ли вы просмотреть это? –