1:首先定义全局变量。作为按钮状态的一个保存
//rawData是否上传的全局状态

public static boolean rawDataStatus=false;

2:点击按钮时,在onClick方法中·实现按钮点击的开关的切换

//rawData 点击改变rawData的状态值

else if(v.getId()==R.id.btn_rawData){

if (Constants.rawDataStatus == false){

viewBinding.btnRawData.setBackgroundResource(R.drawable.btn_open);

Constants.rawDataStatus = true;

}else {

viewBinding.btnRawData.setBackgroundResource(R.drawable.btn_close);

Constants.rawDataStatus = false;

}

}

3:需要点击上传按钮保存按钮的状态,按钮状态默认是false,如果点击了true,然后点击的上传按钮,这个上传按钮可以理解为

按钮的状态保存的一个操作,在其他的行为中也可以在一个事件中作为保存的操作

else if (v.getId() == R.id.upload) {

//保存按钮状态

savaButtonStatus();

4:在点击上传按钮后,执行savaButtonStatus()这个方法。

这个方法的功能是将按钮此刻的一个状态写入文件中。以便于下次或者app重启时直接进入按钮的这个状态。

//保存按钮属性

private void savaButtonStatus() {

SharedPreferences sharedPreferences = getContext().getSharedPreferences(“OnItemHiddenClick”, Context.MODE_PRIVATE);

SharedPreferences.Editor editor = sharedPreferences.edit();

editor.putBoolean(Constants.KEY_BUTTON_STATUS,Constants.rawDataStatus);

editor.commit();

}

5:我们需要在fragment或者activity在进行页面的一个初始化中,在文件中读入按钮保存的一个状态,将文件中的一个

状态设置到页面的按钮控件上。
//从文件中读取按钮的状态,并设置到按钮上进行显示

SharedPreferences rawDataSP = getContext().getSharedPreferences(“OnItemHiddenClick”, Context.MODE_PRIVATE);

Boolean buttonStatus = rawDataSP.getBoolean(Constants.KEY_BUTTON_STATUS,false);

if (buttonStatus){

viewBinding.btnRawData.setBackgroundResource(R.drawable.btn_open);

Constants.rawDataStatus=true;

}

在页面中初始化过程中,我们会从文件中读取按钮的一个状态,当然这个状态只有打开和关闭,也就是true和false。我们默认是

false,如果文件中保存的是true,我们将会进行一个设置。

这样,我们按钮的一个状态保存就完成了。

原文地址:http://www.cnblogs.com/smile908/p/16831046.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性