Android 如何获取已添加的适配器对象的位置

Android 如何获取已添加的适配器对象的位置,android,adapter,Android,Adapter,我正在进行蓝牙连接 首先,我在列表视图中列出了他们的姓名和地址: pairedDevicesArrayAdapter.add(device.getName() + "\n" + device.getAddress()); pairedListView.setOnItemClickListener(mDeviceClickListener); 我为每个找到的设备创建一个מonClick事件。现在我需要在onClick事件中获取BluetoothDevice,而不仅仅是地址 priva

我正在进行蓝牙连接

首先,我在
列表视图中列出了他们的姓名和地址:

pairedDevicesArrayAdapter.add(device.getName() + "\n" + device.getAddress());


pairedListView.setOnItemClickListener(mDeviceClickListener);
我为每个找到的设备创建一个מ
onClick
事件。现在我需要在
onClick
事件中获取
BluetoothDevice
,而不仅仅是地址

    private AdapterView.OnItemClickListener mDeviceClickListener
                = new AdapterView.OnItemClickListener() {
            public void onItemClick(AdapterView<?> av, View v, int arg2, long arg3) {

String info = ((TextView) v).getText().toString();
            String address = info.substring(info.length() - 17);
private AdapterView.OnItemClickListener mDeviceClickListener
=新AdapterView.OnItemClickListener(){
公共链接(AdapterView av、视图v、内部arg2、长arg3){
字符串信息=((TextView)v.getText().toString();
字符串地址=信息子字符串(信息长度()-17);
快速解决方案: 将所有设备存储在数组中。当调用onItemClick时,arg2实际上是数组中的索引,它将等于数组中的索引

好的解决方案: 扩展ArrayAdapter并实现自定义逻辑。

快速解决方案: 将所有设备存储在数组中。当调用onItemClick时,arg2实际上是数组中的索引,它将等于数组中的索引

好的解决方案:
扩展ArrayAdapter并实现自定义逻辑。

制作arrayList并将所有扫描的设备存储在arrayList中

 ArrayList<BluetoothDevice> deviceArrayList; //store all the scanned devices on it.
 BluetoothDevice bluetoothDeviceSelected = null;
 String name,address;

 @Override
 public void onItemClick(AdapterView<?> parent, View view, int position, long id)  {

    bluetoothDeviceSelected = deviceArrayList.get(position);
    name=bluetoothDeviceSelected.getName();
    address=bluetoothDeviceSelected.getAddress();
}
ArrayList deviceArrayList;//将所有扫描的设备存储在其中。
BluetoothDevice bluetoothDeviceSelected=null;
字符串名称、地址;
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id){
bluetoothDeviceSelected=deviceArrayList.get(位置);
name=bluetoothDeviceSelected.getName();
地址=bluetoothDeviceSelected.getAddress();
}

制作一个arrayList并将所有扫描的设备存储在arrayList中

 ArrayList<BluetoothDevice> deviceArrayList; //store all the scanned devices on it.
 BluetoothDevice bluetoothDeviceSelected = null;
 String name,address;

 @Override
 public void onItemClick(AdapterView<?> parent, View view, int position, long id)  {

    bluetoothDeviceSelected = deviceArrayList.get(position);
    name=bluetoothDeviceSelected.getName();
    address=bluetoothDeviceSelected.getAddress();
}
ArrayList deviceArrayList;//将所有扫描的设备存储在其中。
BluetoothDevice bluetoothDeviceSelected=null;
字符串名称、地址;
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id){
bluetoothDeviceSelected=deviceArrayList.get(位置);
name=bluetoothDeviceSelected.getName();
地址=bluetoothDeviceSelected.getAddress();
}