2016-11-11 57 views
0

我是相對較新的Java編程的android和不能找出如何配對兩個設備,通過單擊列表視圖的項目,包含列表新發現的設備。通過點擊一個listView項目,配對兩個藍牙設備Android

我已經創建了一個包含了一組新發現的設備ListView和這裏是我的代碼的一部分,用於click事件:`

public class MainActivity extends AppCompatActivity { 

ListView newListView; // listView containing newly discovered devices 
ArrayAdapter<String> mNewDevicesArrayAdapter; 
BluetoothAdapter mBluetoothAdapter; 


@Override 
protected void onCreate(Bundle savedInstanceState) { 


    /* Variables definition */ 

    mNewDevicesArrayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1); 
    newListView = (ListView) findViewById(R.id.new_lv); 

    // New Devices List View item click 
    newListView.setClickable(true); 

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

     // some code must go here, but I can't figure out which one 


     } 
    }); 

    } 

預先感謝您的幫助!

+0

哪裏是藍牙設備的列表?這個代碼只是有一個空的適配器,就像你已經顯示 –

+0

[如何通過點擊Android項目中的ListView連接藍牙設備?](http://stackoverflow.com/questions/19132160/how - 連接 - 藍牙設備 - 點擊 - 在Android項目的listview - ) –

+0

發現的藍牙設備列表存儲在「newListView」,但我不知道如何創建一個BluetoothDevice實例,以便將這個新發現的設備(通過點擊newListView中的一個項目來選擇)與我的BluetoothAdapter配對。 –

回答

0

在適配器中,您有一個字符串列表,是的。

你可以從BluetoothAdapter

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

     String address = mDevicesAdatper.getItem(position); 
     BluetoothDevice btDevice = mBluetoothAdapter.getRemoteDevice(address); 

     // TODO: Pair 

    } 
}); 

很多細節的BluetoothDevice對象來處理配對的設備是the documentation

+0

太好了,謝謝,它對我很有用! –

+0

很高興聽到。你可以通過[接受答案]來顯示你的感謝(http://stackoverflow.com/help/someone-answers) –

相關問題