Java Android Spinner RealtiveLayout作为项目
是否可以将relativelayout数组设置为微调器的项Java Android Spinner RealtiveLayout作为项目,java,android,android-spinner,android-relativelayout,Java,Android,Android Spinner,Android Relativelayout,是否可以将relativelayout数组设置为微调器的项 RelativeLayout[] items = new RelativeLayout[]{dep1.createObj(getContext()), dep2.createObj(getContext())}; ArrayAdapter<RelativeLayout> adapter = new ArrayAdapter<>(getContext(), android.R.layout.simple_spinn
RelativeLayout[] items = new RelativeLayout[]{dep1.createObj(getContext()), dep2.createObj(getContext())};
ArrayAdapter<RelativeLayout> adapter = new ArrayAdapter<>(getContext(), android.R.layout.simple_spinner_dropdown_item, items);
_deposit.setAdapter(adapter);
我将此作为输出:
我想使用relativelayout,因为我要显示的对象包含两个字符串,将以左对齐和右对齐方式显示。不,您只能使用默认布局在未修改的ArrayAdapter中填充字符串,这非常无聊
如果您想更改默认行为,如上面提到的更改布局,则必须扩展一个适配器,如ArrayAdapter
是自定义适配器的一个示例您可以使用自定义微调器适配器并在其上展开视图。我认为将相对布局作为参数传递是行不通的。看看ArrayAdapter中第三个参数的用途是因为您可以使用自己的POJO类或用户定义的类来提供数据并使用它。仅仅因为它接受T[]对象并不意味着你可以传递任何扩展对象的东西。使用字符串数组或其他有相关数据且不是Android组件的东西。Thx很多。我编写了一个自定义适配器,结果非常好