对于我的应用程序,我需要将一个简单的SparseBooleanArray保存到内存中并稍后读取它。有什么方法可以使用SharedPreferences保存它吗?我考虑过使用SQLite数据库,但对于像这样简单的事情来说它似乎有点过分了。我在StackOverflow上找到的其他一些答案建议使用GSON将其保存为字符串,但我需要使该应用程序的文件大小保持非常轻巧和快速。有没有什么方法可以在不依赖第三方库的情况下实现这一点,同时保持良好的性能? 最佳答案 您可以使用JSON的强大功能来保存任何类型对象的共享首选项例如SparseIntA
我正在尝试读取具有多个checkboxes的列表中的联系人,但是当我调用sparsebooleanarray时......它只为所有列表条目返回false。.evenfortheoneschecked...我调查了这个线程WhyisListView.getCheckedItemPositions()notreturningcorrectvalues?...但是当我实现addClickHandlerToCheckBox时它会强制停止...这已经困扰我4天了..请帮忙..publicvoidpopulateContactList(){//Buildadapterwithcontactent
我提到了“SparseBooleanArray”类的android文档站点,但仍然不了解该类的目的是什么?我们需要使用该类的目的是什么??这是文档链接http://developer.android.com/reference/android/util/SparseBooleanArray.html 最佳答案 根据我从文档中得到的信息,它用于将整数值映射到boolean值。也就是说,如果你想映射,如果应该为某个用户ID显示一个小部件,而一些用户ID已经被删除,那么你的映射就会有间隙。意思是,对于普通数组,您将创建一个size=max
我在ListView中使用复选框并希望在ListView中获取选定的项目。问题是SparseBooleanArray.size()始终保持为0,即使在ListView中选中复选框也是如此。我搜索了很多但是问题仍然存在。这是我正在使用的代码:checked=lvShowContacts.getCheckedItemPositions();if(checked!=null){for(inti=0;i在这里我总是得到checked.size()作为0。请帮助我。在此先感谢。 最佳答案 使用SparseBooleanArray的一些技巧:设
当发生配置更改时,我的ListView复选框状态会丢失,我明白这是为什么。我尝试实现publicvoidonSaveInstanceState(finalBundleoutState)在我的一个fragment中。所以我只是想知道将我的SparseBooleanArray存储在outState中的最简单方法是什么。此外,我有点困惑,因为ListView有以下方法:getListView().getCheckedItemPositions();这有什么用? 最佳答案 在我的例子中,我最终通过围绕SparseBooleanArray实现