手机卫士开发_setting界面和自动更新的设置
2016-03-19 23:59
288 查看
每次进入应用的时候,都会进行连接服务器进行版本检查是否有新版本要进行更新,但是在正常的应用使用中,用户是可以自己去选则是否要进行自动的版本更新,所以要在设置的界面中添加这一设置的选项。
1、写设置界面。
设置界面的布局为上面一行textview显示设置项目的名称,下面一行textview显示该设置项目的描述,右边有一个checkbox供用户选择。可以将这三个组件写入同一个组合组件中,具体操作如下:
新建一个setting_item_view.xml文件,在这个xml文件中将刚才提到的三个组件按相对布局布置好。
新建一个View类继承相对布局类,将这个类与刚才所写的.xml文件相关联
并将组合布局中的组件进行初始化,为每个组件创建set/get方法。
在setting_activity的xml文件中就可以直接添加这个组合组件,不用一个个的写组件了,由于有很多个这样类似的组件,所以通过id一级在组合布局类中所写的set方法为每个组件动态命名。
2、设置自动更新是否开启
为这个组合组件设定setonclicklistener方法,每当发生点击时,通过get方法得到当前的checkbox的状态,每次发生点击就将状态置为想法,同时将描述信息也做相应的改变。
要注意的是,安卓中信息的传递方法,每当一个时间发生的时候,最先接收到的事最上层的组件,也就是activity,然后一层层向下传递,知道最底层的组件,如果这个组件相应则上层的组件就不能相应这一事件,只有下层的组件不响应这一事件的时候才交回到上层组件处理,所以这里要将checkbox相应事件的属性关闭,以让这个组合组件统一管理。
用户进行选择之后,要将用户选择的信息保存到本地,使用sharedpreference来保存用户的配置文件xml.
在用户每次进入软件的时候,先从这个config.xml文件中获得auto_update的属性来选择是否连接服务器进行升级。如果为false,则不连接服务器检查版本直接进入主界面,这里可以通过哦handler的延迟发信息的功能让splash界面停留3秒以展示主界面,在主线程中不要采用sleep()的方式来等待。
1、写设置界面。
设置界面的布局为上面一行textview显示设置项目的名称,下面一行textview显示该设置项目的描述,右边有一个checkbox供用户选择。可以将这三个组件写入同一个组合组件中,具体操作如下:
新建一个setting_item_view.xml文件,在这个xml文件中将刚才提到的三个组件按相对布局布置好。
新建一个View类继承相对布局类,将这个类与刚才所写的.xml文件相关联
View child = View.inflate(getContext(), R.layout.setting_item_view, null);
并将组合布局中的组件进行初始化,为每个组件创建set/get方法。
在setting_activity的xml文件中就可以直接添加这个组合组件,不用一个个的写组件了,由于有很多个这样类似的组件,所以通过id一级在组合布局类中所写的set方法为每个组件动态命名。
2、设置自动更新是否开启
为这个组合组件设定setonclicklistener方法,每当发生点击时,通过get方法得到当前的checkbox的状态,每次发生点击就将状态置为想法,同时将描述信息也做相应的改变。
要注意的是,安卓中信息的传递方法,每当一个时间发生的时候,最先接收到的事最上层的组件,也就是activity,然后一层层向下传递,知道最底层的组件,如果这个组件相应则上层的组件就不能相应这一事件,只有下层的组件不响应这一事件的时候才交回到上层组件处理,所以这里要将checkbox相应事件的属性关闭,以让这个组合组件统一管理。
android:clickable="false" android:focusableInTouchMode="false" android:focusable="false"
用户进行选择之后,要将用户选择的信息保存到本地,使用sharedpreference来保存用户的配置文件xml.
sharePerference.edit().putBoolean("auto_update", false).commit();
在用户每次进入软件的时候,先从这个config.xml文件中获得auto_update的属性来选择是否连接服务器进行升级。如果为false,则不连接服务器检查版本直接进入主界面,这里可以通过哦handler的延迟发信息的功能让splash界面停留3秒以展示主界面,在主线程中不要采用sleep()的方式来等待。
handler.sendEmptyMessageDelayed(LOADMAIN, 3000);
相关文章推荐
- java中的观察者模式
- Keil/MDK 小知识点:Program size: Code, RO-data , RW-data, ZI-data 解释(什么意思)
- 【LeetCode题意分析&解答】41. First Missing Positive
- html字符实体对照表
- Android Studio从硬盘上彻底删除Project项目
- Android 存储中的内部存储和外部存储
- 第三次作业
- boost::intrusive_ptr原理介绍
- 安装astrixx firefox插件
- 八皇后问题深度遍历搜索
- ReenTrantLock技术内幕(一)
- 数据结构中排序算法的总结
- iOS description方法的使用介绍
- java的双缓冲技术
- java的双缓冲技术
- 查询与修改Oracle字符集
- java的双缓冲技术
- windows下安装solr5.5.0
- IOS学习 Block语法的使用:Button、AlertView监听方法改写
- 20145223《Java程序程序设计》第3周学习总结