Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/195.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
是否在android的listview中保存复选框状态?_Android - Fatal编程技术网

是否在android的listview中保存复选框状态?

是否在android的listview中保存复选框状态?,android,Android,我正在从手机中获取播放列表,并在listview中显示我的歌曲以及多个复选框。现在,我需要保存复选框的状态,当用户再次启动应用程序时,这些复选框将被重新加载。您能建议如何操作吗 用于从系统播放列表中获取歌曲…我编写的代码是: ListView list = (ListView) findViewById(R.id.songlist); String[] projection = { MediaStore.Audio.Playlists.Members._ID, M

我正在从手机中获取播放列表,并在listview中显示我的歌曲以及多个复选框。现在,我需要保存复选框的状态,当用户再次启动应用程序时,这些复选框将被重新加载。您能建议如何操作吗

用于从系统播放列表中获取歌曲…我编写的代码是:

ListView list = (ListView) findViewById(R.id.songlist);
String[] projection = { MediaStore.Audio.Playlists.Members._ID,
                MediaStore.Audio.Playlists.Members.TITLE,
                 MediaStore.Audio.Playlists.Members.DATA,
                MediaStore.Audio.Playlists.Members.AUDIO_ID,
                MediaStore.Audio.Playlists.Members.ARTIST };

    Cursor cursor = managedQuery(
            // 1 is the id of playlist  MediaStore.Audio.Playlists.Members.getContentUri("external", 1), projection,
                MediaStore.Audio.Media.IS_MUSIC + " != 0 ", null, null);

SimpleCursorAdapter a = new SimpleCursorAdapter(this, R.layout.list_item, cursor,
                new String[] { MediaStore.Audio.Playlists.Members.TITLE }, new int[] { R.id.checkbox });
        this.setListAdapter(a);
        list.setAdapter(a);

这应该很有帮助

这应该很有帮助

您可以覆盖活动的
ondestory
方法,将适配器的内容保存到文件中。有关如何保存到文件的参考信息,请参见。您可以使用SimpleAdapter上的
getItem(int位置)
轻松访问适配器的内容。

您可以覆盖活动的
onDestroy
方法,将适配器的内容保存到文件中。有关如何保存到文件的参考信息,请参见。您可以使用SimpleAdapter上的
getItem(int position)
轻松访问适配器的内容