在我的Android应用程序中,我有一些代表不同操作的对象。
public class OperacionDivisa implements IOperacion {
public class OperacionLargo implements IOperacion {
public class OperacionMedio implements IOperacion {
public class OperacionOpciones implements IOperacion {
每种操作都实现了IOperation接口,因此我可以制作IOperations的ArrayList并将所有操作存储在一个ArrayList中。
现在我想做反过程。我想从Firebase获得操作的arraylist(已经实现)并且我想在ListView中显示操作
我创建了一个自定义适配器,如下所示:
public class ListViewAdapterOperaciones extends ArrayAdapter<IOperacion>
问题是我需要将每个对象转换为其原始类,以在textview中显示不同的属性。所以这没用。
IOperacion operacion = (IOperacion) getItem(position);
因此,对于每个对象,我想在listView中显示一些数据但我无法弄清楚如何执行此操作。任何帮助将不胜感激。
提前致谢。
答案 0 :(得分:0)
使用if
语句(或类似)来检查instanceof
,然后使用对象作为子类。
if (operacion instanceof OperacionLargo) {
// Large operation
} else if (operacion instanceof OperacionDivisa) {
// Other operation
}