Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/206.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何将ArrayAdapter适配器放入ArrayList?_Java_Android_Android Arrayadapter - Fatal编程技术网

Java 如何将ArrayAdapter适配器放入ArrayList?

Java 如何将ArrayAdapter适配器放入ArrayList?,java,android,android-arrayadapter,Java,Android,Android Arrayadapter,我正在尝试制作一个能够检测附近可发现的蓝牙设备的应用程序,并将所有mac地址放入一个列表中。出于我不理解的原因,如果我试图使用列表存储device.getAddress()中的字符串,应用程序将崩溃 在未能将这些地址放入列表后,我让步了,并使用了一个ArrayAdapter,因为它已在一些示例代码中使用。我的想法是,也许我可以将结果放入ArrayAdapter,然后从中提取地址,然后放入myList。还是不行。据我所知,如果我的应用程序不崩溃,我就不能使用列表 当我注释掉任何与myList有关的

我正在尝试制作一个能够检测附近可发现的蓝牙设备的应用程序,并将所有mac地址放入一个列表中。出于我不理解的原因,如果我试图使用列表存储device.getAddress()中的字符串,应用程序将崩溃

在未能将这些地址放入列表后,我让步了,并使用了一个ArrayAdapter,因为它已在一些示例代码中使用。我的想法是,也许我可以将结果放入ArrayAdapter,然后从中提取地址,然后放入myList。还是不行。据我所知,如果我的应用程序不崩溃,我就不能使用列表

当我注释掉任何与myList有关的内容时,应用程序不会崩溃

/* these are declared as class members */
//private ArrayAdapter<String> myArrayAdapter;
//private List<String> myList;
/*-------------------------------*/

private final BroadcastReceiver broadcastReceiver = new BroadcastReceiver() {
    @Override
    public void onReceive(Context context, Intent intent) {
        String action = intent.getAction();
        int position = 0;

        if (BluetoothDevice.ACTION_FOUND.equals(action)) {
            BluetoothDevice device = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);
            myArrayAdapter.add(device.getAddress());
            //myList.add(device.getAddress()); 
            //position++;  //SO USING THIS INTEGER...

        } else if (BluetoothAdapter.ACTION_DISCOVERY_FINISHED.equals(action)) {             
            btnLocate.setText("Refresh Location");
            btnLocate.setClickable(true);
            //position--;
            //while(position>=0){
              //myList.add(myArrayAdapater.getItem(position).toString()); 
              //position--;
            //}
        }
    }
};

在尝试将设备地址添加到列表之前,您是否初始化了列表?是否正确?此外,当开发人员文档讨论对象的有效期时,您可能想了解接收方生命周期

在尝试将设备地址添加到列表之前,是否初始化了列表?是否正确?此外,当开发人员文档讨论对象的有效期时,您可能想了解接收方生命周期

我。。。这有点像个傻瓜。。。什么是logcat?我怎样才能得到它?听起来不像个混蛋,但是。在这里发布您的例外情况。转到DDMS(即窗口>显示视图>其他>DDMS)并选择红色日志cat行,复制并粘贴到此处。12-02 12:01:54.472:e/AndroidRuntime(16043):致命异常:main 12-02 12:01:54.472:e/AndroidRuntime(16043):java.lang.RuntimeException:接收广播意图时出错{act=android.bluetooth.device.action.FOUND(有附加项)}在com.ronnyszutu.lpf.LPFMainActivity中$1@4051984012-02 12:01:54.472:E/AndroidRuntime(16043):在android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:722)12-02 12:01:54.472:E/AndroidRuntime(16043):在android.os.Handler.handleCallback(Handler.java:587)12-02 12:01:54.472:E/AndroidRuntime(16043):在android.os.Handler.dispatchMessage(Handler.java:92)12-02 12:01:54.472:E/AndroidRuntime(16043):在android.os.Looper.loop(Looper.java:130)12-02 12:01:54.472:E/AndroidRuntime(16043):在android.app.ActivityThread.main(ActivityThread.java:3683)我。。。这有点像个傻瓜。。。什么是logcat?我怎样才能得到它?听起来不像个混蛋,但是。在这里发布您的例外情况。转到DDMS(即窗口>显示视图>其他>DDMS)并选择红色日志cat行,复制并粘贴到此处。12-02 12:01:54.472:e/AndroidRuntime(16043):致命异常:main 12-02 12:01:54.472:e/AndroidRuntime(16043):java.lang.RuntimeException:接收广播意图时出错{act=android.bluetooth.device.action.FOUND(有附加项)}在com.ronnyszutu.lpf.LPFMainActivity中$1@4051984012-02 12:01:54.472:E/AndroidRuntime(16043):在android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:722)12-02 12:01:54.472:E/AndroidRuntime(16043):在android.os.Handler.handleCallback(Handler.java:587)12-02 12:01:54.472:E/AndroidRuntime(16043):在android.os.Handler.dispatchMessage(Handler.java:92)12-02 12:01:54.472:E/AndroidRuntime(16043):在android.os.Looper.loop(Looper.java:130)12-02 12:01:54.472:E/AndroidRuntime(16043):在android.app.ActivityThread.main(ActivityThread.java:3683)
12-02 12:01:54.472: E/AndroidRuntime(16043): FATAL EXCEPTION: main
12-02 12:01:54.472: E/AndroidRuntime(16043): java.lang.RuntimeException: Error receiving broadcast Intent { act=android.bluetooth.device.action.FOUND (has extras) } in com.ronnyszutu.lpf.LPFMainActivity$1@40519840
12-02 12:01:54.472: E/AndroidRuntime(16043): at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:722)
12-02 12:01:54.472: E/AndroidRuntime(16043): at android.os.Handler.handleCallback(Handler.java:587)