我试图在ArrayAdapter
中显示蓝牙设备列表,并且想要覆盖适配器的默认功能以显示对象toString()
。我知道有些解决方案可以扩展getView(...)
方法,但我真的觉得这是过度复杂的事情。我只想要重写如何构建显示的字符串。对于蓝牙设备,这将使用getName()
而不是toString()
。在ArrayAdapter中显示自定义对象 - 简单的方法?
所以我创建了一个自定义的arrayadapter像的下方,并且在理想情况下有东西像getDisplayString(T value)
public class MyArrayAdapter extends ArrayAdapter<BluetoothDevice> {
...
@Override //I wish something like this existed
protected String getDisplayString(BluetoothDevice b) {
return b.getName();
}
...
}
通过这样做,我不能使用arrayAdapter作为蓝牙设备的容器... –