您的位置:首页 > 其它

手机卫士开发_setting界面和自动更新的设置

2016-03-19 23:59 288 查看
每次进入应用的时候,都会进行连接服务器进行版本检查是否有新版本要进行更新,但是在正常的应用使用中,用户是可以自己去选则是否要进行自动的版本更新,所以要在设置的界面中添加这一设置的选项。

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);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: