所以,伙计们,在我的项目中,我使用自定义listView,并且起初我只传递给适配器字符串,但现在我想要通过类' s,因为我想传递更多信息。但我不知道为什么它不会让我失望! 这是我的带有字符串的适配器:
class costum_adapter extends ArrayAdapter<String>{
public costum_adapter(Context context, ArrayList<String> horarios) {
super(context, R.layout.costum_listview ,horarios);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater horarioInflater = LayoutInflater.from(getContext());
View costumView = horarioInflater.inflate(R.layout.costum_listview, parent, false);
String singleHorario = getItem(position);
TextView hora = (TextView) costumView.findViewById(R.id.Hora);
TextView nota = (TextView) costumView.findViewById(R.id.Nota);
hora.setText(singleHorario);
nota.setText(" ");
return costumView;
}
}
现在,我认为为了接收课程,我只需要更改参数,ArrayList horarios我将更改为ArrayList horarios。 &#34; horario&#34;是我的班级,在这里:
public class horario{
public String hora;
public int destino;
public int note;
public horario(String horaIn, int Destino, int Nota){
hora = horaIn;
destino = Destino;
note = Nota;
}
}
我也使用ArrayList。但是我用类中的对象填充了ArrayList。 当我尝试更改适配器上的参数以接收我的课程时,它不会识别它,我开始输入&#34; horario&#34;但它没有被识别,我不知道为什么,因为我在另一个文件中有这个类。
答案 0 :(得分:0)
试试这样:
class costum_adapter extends ArrayAdapter<horario> {
public costum_adapter(Context context, ArrayList<horario> horarios) {
super(context, R.layout.costum_listview ,horarios);
}
答案 1 :(得分:0)
试试这个
public costum_adapter(Context context, ArrayList<horario> horarios) {
super(context, R.layout.costum_listview ,horarios);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater horarioInflater = LayoutInflater.from(getContext());
View costumView = horarioInflater.inflate(R.layout.costum_listview, parent, false);
String singleHorario = getItem(position).getHora();
String singlenote = getItem(position).getNote();
TextView hora = (TextView) costumView.findViewById(R.id.Hora);
TextView nota = (TextView) costumView.findViewById(R.id.Nota);
hora.setText(singleHorario);
nota.setText(singlenote);
return costumView;
}
模型类
public class horario{
public String hora;
public int destino;
public int note;
public horario(String horaIn, int Destino, int Nota){
hora = horaIn;
destino = Destino;
note = Nota;
}
public String getHora() {
return hora;
}
public void setHora(String hora) {
this.hora = hora;
}
public int getDestino() {
return destino;
}
public void setDestino(int destino) {
this.destino = destino;
}
public int getNote() {
return note;
}
public void setNote(int note) {
this.note = note;
}
}
答案 2 :(得分:0)
所以我设法解决了自己的问题。我的问题是我无法改变&#34; ArrayList&#34;我想要的是我的课程,但那是因为&#34; horario&#34;被宣布为更大的班级。所以我只需要改为&#34; ArrayList&#34;,&#34; mostraHorario&#34;是一个更大的阶层。