我试图在一个中显示蓝牙设备列表ArrayAdapter
,并希望覆盖适配器的默认功能以显示对象toString()
。我知道有扩展getView(...)
方法的解决方案,但我真的觉得这太复杂了。我想要的只是覆盖要显示的字符串的构建方式。对于蓝牙设备,这将使用getName()
而不是toString()
.
所以我创建了一个自定义数组适配器,如下所示,理想情况下有一个类似于getDisplayString(T value)
public class MyArrayAdapter extends ArrayAdapter<BluetoothDevice> {
...
@Override //I wish something like this existed
protected String getDisplayString(BluetoothDevice b) {
return b.getName();
}
...
}