Я занимаюсь написанием пользовательского адаптера, чтобы заполнить список из 3 текстовых просмотров на строку. Для этого я нашел довольно примерный код, но тот, который казался лучшим, был у: http://www.anddev.org/custom_widget_adapters-t1796.htmlНевозможно использовать LayoutInflater в пользовательском адаптере
После нескольких небольших настроек, чтобы исправить некоторые проблемы с компилятором с последним Android SDK, я получил его, только, чтобы получить исключение:
ERROR/AndroidRuntime (281): java.lang.UnsupportedOperationException: addView (вид, LayoutParams) не поддерживается в AdapterView
Так что я сделал много исследований и нашел множество возможных причин и исправлений для этого. Ничего из этого не изменилось. Мой адаптер код в настоящее время:
public class WeatherAdapter extends BaseAdapter {
private Context context;
private List<Weather> weatherList;
public WeatherAdapter(Context context, int rowResID,
List<Weather> weatherList) {
this.context = context;
this.weatherList = weatherList;
}
public int getCount() {
return weatherList.size();
}
public Object getItem(int position) {
return weatherList.get(position);
}
public long getItemId(int position) {
return position;
}
public View getView(int position, View convertView, ViewGroup parent) {
Weather weather = weatherList.get(position);
//LayoutInflater inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
LayoutInflater inflater = LayoutInflater.from(context);
View v = inflater.inflate(R.layout.weather_row, null, true);
TextView cityControl = (TextView)v.findViewById(R.id.city);
TextView temperatureControl = (TextView)v.findViewById(R.id.temperature);
ImageView skyControl = (ImageView)v.findViewById(R.id.sky);
return v;
}
}
Так что я попробовал закомментирована способ получения Inflater, и в настоящее время раскомментировал вне. Я попытался передать «родительский», чтобы надуть, а также «нуль», и передал «true», «false» и полностью исключил последний параметр. Ни один из них не работал, и все примеры, которые я нашел до сих пор, были с 2008 года, которые у меня возникают, немного устарели.
Если бы кто-нибудь мог помочь с этим, я бы с удовольствием решил проблему.
При использовании `AdapterView` вы хотите, чтобы ваши представления не зависели от родителя,` getView() `позаботится о том, чтобы привязать его к родительскому для вас. – 2013-02-05 01:01:27