0
Мне нужно, чтобы мой ListView поддерживал разные макеты в зависимости от некоторого состояния, но он не работает, а макет одинаковый в каждой ячейке. Вот часть моего кода, который, к сожалению, не работает:android - несколько макетов в ячейках в списках
public class CustomAdapter extends ArrayAdapter<String> {
private final Activity context;
private final String[] sSecondStartTimeArray;
private final String[] sSecondEndTimeArray;
private final String[] sSecondTitleArray;
private final String AllData2;
public CustomAdapter(Activity context,
String[] sSecondStartTimeArray, String[] sSecondEndTimeArray, String[] sSecondTitleArray, String AllData2) {
super(context, R.layout.relcell2main, sSecondStartTimeArray);
this.context = context;
this.sSecondStartTimeArray = sSecondStartTimeArray;
this.sSecondEndTimeArray = sSecondEndTimeArray;
this.sSecondTitleArray = sSecondTitleArray;
this.AllData2 = AllData2;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
if (convertView == null) {
LayoutInflater inflater = context.getLayoutInflater();
int resource;
switch (HTTPRequestSecond.GetSecondType(AllData2, position)) {
case "rest":
resource = R.layout.relcell2second;
break;
default:
resource = R.layout.relcell2main;
break;
}
convertView = inflater.inflate(resource, parent, false);
}
//some code (it's now working properly even without this part)
return convertView;
}
Результат «отдыха» существует, я проверил. Но не работает.
Любые ошибки? Это может быть связано с вашим методом 'inflater.inflate', он выдает' InflateException', если это ошибка. –
@ ErickFilho нет ошибок, только один и тот же макет везде :( –
Показано только 'relcell2main' –