职业IT人-IT人生活圈

 找回密码
 成为会员
搜索
查看: 870|回复: 2

玩转Android--UI篇--PreferenceActivity

[复制链接]
钰云 发表于 2011-9-9 10:55 | 显示全部楼层 |阅读模式
由于iteye不支持动态更改博客,总是保留之前一个,所以修改后的地址是:http://hualang.iteye.com/blog/1163185

添加了播放背景音乐和开启wifi的功能实现



我们可以使用PreferenceActivity来添加设置,Android提供了放百年的工具来定义所有的程序的首选项,并支持既不不许要编写代码的情况写显示这些首选项。可以在一个名为res/xml/settings.xml的资源文件中定义这些首选项:
res/xml/settings.xml
Xml代码  
<?xml version="1.0" encoding="utf-8"?>  
<PreferenceScreen  
  xmlns:android="http://schemas.android.com/apk/res/android">  
    <CheckBoxPreference  
        android:key="voice"  
        android:title="@string/voice"  
        android:summary="@string/voice_summary"  
        android:defaultValue="true"   
    />  
    <CheckBoxPreference  
        android:key="wifi"  
        android:title="@string/wifi"  
        android:summary="@string/wifi_summary"  
        android:defaultValue="true"   
    />  
</PreferenceScreen>  

<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen
  xmlns:android="http://schemas.android.com/apk/res/android">
    <CheckBoxPreference
            android:key="voice"
            android:title="@string/voice"
            android:summary="@string/voice_summary"
            android:defaultValue="true"
    />
    <CheckBoxPreference
            android:key="wifi"
            android:title="@string/wifi"
            android:summary="@string/wifi_summary"
            android:defaultValue="true"
    />
</PreferenceScreen>
res/values/strings.xml
Xml代码  
<?xml version="1.0" encoding="utf-8"?>  
<resources>  
    <string name="hello">Hello World, AddSetting!</string>  
    <string name="app_name">AddSetting</string>  
    <string name="voice">声音</string>  
    <string name="voice_summary">开启手机音量</string>  
    <string name="wifi">无线</string>  
    <string name="wifi_summary">开启无线网络</string>  
</resources>  

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="hello">Hello World, AddSetting!</string>
    <string name="app_name">AddSetting</string>
    <string name="voice">声音</string>
    <string name="voice_summary">开启手机音量</string>
    <string name="wifi">无线</string>
    <string name="wifi_summary">开启无线网络</string>
</resources> AddSetting.java
Java代码  
package com.settings.test;   
  
import android.os.Bundle;   
import android.preference.PreferenceActivity;   
  
public class AddSetting extends PreferenceActivity {   
    /** Called when the activity is first created. */  
    @Override  
    public void onCreate(Bundle savedInstanceState) {   
        super.onCreate(savedInstanceState);   
        addPreferencesFromResource(R.xml.settings);   
    }   
}  

package com.settings.test;

import android.os.Bundle;
import android.preference.PreferenceActivity;

public class AddSetting extends PreferenceActivity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        addPreferencesFromResource(R.xml.settings);
    }
} addPreferencesFromResource()方法从XML文件中读取设置定义,并将其解压缩到当前的活动视图中。所有耗时的解压缩工作都在PreferenceActivity类中处理

在编写程序的时候,我们可以将其放在自己定义的menu菜单的设置中



大小: 18.7 KB

大小: 20.4 KB

大小: 21.3 KB

大小: 16.9 KB
NewGame.zip (2.4 MB)
下载次数: 27
查看图片附件

醉倚西风 发表于 2011-9-9 10:55 | 显示全部楼层
保存的设置的配置文件在哪里?在其他地方如何调用这个设置呢?还没有讲完啊!

紫衿 发表于 2011-9-9 10:56 | 显示全部楼层
funever 写道
保存的设置的配置文件在哪里?在其他地方如何调用这个设置呢?还没有讲完啊!

不好意思,稍后就补上
您需要登录后才可以回帖 登录 | 成为会员

本版积分规则

QQ|手机版|小黑屋|网站帮助|职业IT人-IT人生活圈 ( 粤ICP备12053935号-1 )|网站地图
本站文章版权归原发布者及原出处所有。内容为作者个人观点,并不代表本站赞同其观点和对其真实性负责,本站只提供参考并不构成任何投资及应用建议。本站是信息平台,网站上部分文章为转载,并不用于任何商业目的,我们已经尽可能的对作者和来源进行了通告,但是能力有限或疏忽造成漏登,请及时联系我们,我们将根据著作权人的要求立即更正或者删除有关内容。

GMT+8, 2024-4-28 17:46 , Processed in 0.134960 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表