for(BluetoothDevice device : pairedDevices) { list1.add("设备名称:" + device.getName() + "/" + device.getAddress()); mainList1.add(device); // Toast.makeText(getApplicationContext(),"Showing Paired Devices", // Toast.LENGTH_SHORT).show();
adapter1 = new ArrayAdapter (this,android.R.layout.simple_list_item_1, list1); } list1.add("未配对设备:"); // Log.d("检测:", "已配对蓝牙设备读取正常!" ); lv1.setAdapter(adapter1); Log.d("检查:","lv1[1]"+lv1.getItemAtPosition(1));
lv1.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { String str=lv1.getItemAtPosition(position)+" "; Log.d("检查:","OnItemClick功能实现!\n"+str); } });
对ListView的Item点击响应,用到的是:
lv1.setOnItemClickListener(new AdapterView.OnItemClickListener()
其中获取在ListView中位置的position对应名称由:
getItemAtPosition(position)
但是得到的数据类型为Map型,需要加上" "自动调用toString()函数,转化为String类型。
//**************************************************************************************************************//
//**************************************************************************************************************//
//**************************************************************************************************************//
//**************************************************************************************************************//
lv1.setOnItemClickListener(new ItemClickListener()); } public class ItemClickListener implements AdapterView.OnItemClickListener{ @Override public void onItemClick(AdapterView<?> arg0,View arg1,int arg2,long arg3) { String str = lv1.getItemAtPosition(arg2)+" "; Log.d("检测:","str="+str ); } }
同时,在方法外部声明类,及implements的方法,在方法内引用相应(并不相同):
OnItemClickListener对应的是:
setOnItemClickListener(new ItemClickListener())
括号内的类名即为方法外声明的类。
//**************************************************************************************************************//
//**************************************************************************************************************//
//**************************************************************************************************************//
//**************************************************************************************************************//
本想着在一个layout中使用多个ListView控件,但是点击的时候能够通过第二种方法,使用switch/case的方法区分不同的控件,但是尝试后不知道通过什么指令获取不同的控件的id,尝试过getId()和View中的arg1,说以还是很难受的。
如果哪位清楚的话请留言探讨一下,谢谢~