如何隐藏视图总是如此
有人能告诉我如何隐藏视图吗?
我正在使用view.setVisibility(view.GONE);
隐藏视图view.setVisibility(view.GONE);
但是当重新打开应用程序时,我必须重新隐藏视图。 我希望在单击按钮时始终隐藏视图,直到清除应用程序数据或卸载为止。 谢谢!
永久隐藏没有选择,但你可以通过这种方式实现
1.删除特定view
parent.removeViewAt(index); parent.removeView(view);
-
你必须保存状态以
show/hide
永久存储器上的view
分享偏好/数据库
共享首选项示例
1.在sharedPrefernces
存储值:
SharedPreferences preferences = this.getSharedPreferences("SoldiPreferences", Context.MODE_PRIVATE); SharedPreferences.Editor editor = preferences.edit(); editor.putBoolean("storevalue", false); editor.commit();
2.get从sharedPreferences
值:
SharedPreferences preferences = this.getSharedPreferences("SoldiPreferences", Context.MODE_PRIVATE); preferences.getBoolean("storevalue", false); if(preferences.getBoolean("storevalue", false)) { view.setVisibility(View.VISIBLE); } else view.setVisibility(View.GONE);
您需要通过在SharedPreference
创建隐藏和取消隐藏视图的标志以及您需要GONE或VISIBLE View的标志的基础来保存状态。
您必须使用SharedPreferences
,当您隐藏View
然后在SharedPreferences
存储值时,当您从SharedPreferences
返回应用程序获取值时,根据该值隐藏您使用的方法。
SharedPreferences sp = getSharedPreferences("PREFS_NAME", Context.MODE_PRIVATE); SharedPreferences.Editor et = sp.edit(); et.putBoolean("isViewHide", true); et.commit();
从SharedPreferences获取价值
SharedPreferences sp = getSharedPreferences("PREFS_NAME", Context.MODE_PRIVATE); boolean cb1 = sp.getBoolean("isViewHide", false);
来自SharedPreferences示例的引用
您当前的方法是程序化方法,如果您希望按钮切换视图的可见性,则可能需要使用该方法。 我所知道的唯一其他选项是禁用XML布局文件的可见性: