1

我有一个简短的问题。如何在不使用 AsyncTask 的情况下更新 TextField?在我的 Activity 类中,我有一个这样的函数:

private void CheckBlueToothState(){

      if (bluetoothAdapter == null){
            status.setText("Bluetooth NOT support.");
        }else{
            if (bluetoothAdapter.isEnabled()){
                if(bluetoothAdapter.isDiscovering()){
                    status.setText("Bluetooth is currently in device discovery process.");
                }else{
                    status.setText("Bluetooth is Enabled");
                    search.setEnabled(true);
                }
            }else{
                status.setText("Bluetooth is NOT Enabled");
                Intent enableBtIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
                startActivityForResult(enableBtIntent, REQUEST_ENABLE_BT);
            }
        }
    }

它检查设备是否有蓝牙,它是启用还是禁用,你希望得到图片。所以再次回答我的问题。如果我打开蓝牙,如何动态更改文本字段status,反之亦然?

4

1 回答 1

6

注册BroadcastReceiver意图操作BluetoothAdapter.ACTION_STATE_CHANGED并将您的文本更新代码移动到onReceive方法中。

示例代码可以在这里找到。

于 2012-06-26T12:42:30.100 回答