【发布时间】:2012-11-21 19:33:42
【问题描述】:
我尝试了几种方法来做到这一点,我遵循了这个 -> Android Spinner databind using array list 答案,但我的对象里面有一个 ArrayList。 整个事情就是一个 ArrayList,其中 Object 有一个自己的列表。
如何正确显示这些信息?这个类中的另一个字段是我不想选择的,只是里面的arraylist。类定义将使一切变得清晰:
public class Horario{
private String fecha;
private ArrayList<String> hora;
public Horario(String _fecha, ArrayList<String> _hora){
fecha=_fecha;
hora = _hora;
}
public Horario(){}
public void setFecha(String _fecha){
fecha = _fecha;
}
public void setHora(ArrayList<String> _hora){
hora=_hora;
}
public String getFecha(){
return fecha;
}
public ArrayList<String> getHora(){
return hora;
}
}
这是一个时间表类,日期(fecha)是我不想选择的,小时(hora)是。我把它想象成一个带有类别(日期)和一组可点击项目(小时)的下拉菜单。
Date1
hour 1
hour 2
hour 3
Date2
hour 1
如果这很困难/不可能,那么我正在考虑在微调器的每个选项中列出日期+小时。
Date1 - hour 1
Date1 - hour 2
Date1 - hour 3 ....
我怎样才能做到这一点?我怎样才能个性化一个适配器来达到这个目的?提前致谢!
【问题讨论】:
-
您基本上是在寻找带有分段适配器的
ListView。有很多教程。 -
@Luksprog:类似的东西,但是是微调器形式?
-
如果我没记错的话,
Spinner不支持不同的行类型,因此分段适配器不适用。但是,您可以使用第二个选项,将日期放在每一行中,并且只使用一种行类型(所有行都是可选的)。