【安卓笔记】高速的发展设置界面—–PreferenceActivity

【安卓笔记】高速的发展设置界面—–PreferenceActivity

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

通常app都会有一个设置界面,例如以下:

【安卓笔记】高速的发展设置界面-----PreferenceActivity

通常做法是自定义布局,然后在代码里面加入响应函数,并将结果保存到Sharedpreferences中。
android给我们提供了PreferenceActivity来简化开发设置界面。

你仅仅需这样做:
1.创建一个类继承PreferenceActivity,并导入设置界面布局:

package com.example.preferenceactivitydemo1;
import android.os.Bundle;
import android.preference.PreferenceActivity;
public class MainActivity extends PreferenceActivity
{
	@SuppressWarnings("deprecation")
	@Override
	protected void onCreate(Bundle savedInstanceState)
	{
		super.onCreate(savedInstanceState);
		addPreferencesFromResource(R.xml.main_preference);
	}
	
}

2.在res文件夹下加入xml文件夹,并创建一个名为main_preference(即代码中引用的资源文件)的文件.
3.编写资源文件。
上图设置界面相应的资源文件例如以下:
<?xml version="1.0" encoding="utf-8"?

><PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" android:title="标题" > <PreferenceCategory android:summary="分组1" android:title="分组1标题" > <ListPreference android:defaultValue="@string/defaultvalues" android:dialogTitle="对话框标题" android:entries="@array/entries" android:entryValues="@array/entriesvalue" android:key="myListPreference" android:summary="标题说明" android:title="小标题" /> <CheckBoxPreference android:key="doubi" android:summaryOff="逗比模式关闭" android:summaryOn="逗比模式开启" android:title="逗比模式" > </CheckBoxPreference> </PreferenceCategory> <PreferenceCategory android:summary="分组2" android:title="分组2标题" > <SwitchPreference android:key="fly" android:summaryOff="已关闭飞行模式" android:summaryOn="已开启飞行模式" android:switchTextOff="关闭" android:switchTextOn="开启" android:title="飞行模式" > </SwitchPreference> <EditTextPreference android:defaultValue="zhangsan" android:dialogTitle="编辑姓名" android:key="name" android:summary="编辑您的姓名" android:title="编辑" > </EditTextPreference> </PreferenceCategory></PreferenceScreen>


当中引用了string.xml的相关内容:


<?xml version="1.0" encoding="utf-8"?

><resources> <string name="app_name">PreferenceActivityDemo1</string> <string name="action_settings">Settings</string> <string name="hello_world">Hello world!</string> <string-array name="entries"> <item>小苹果</item> <item>小香蕉</item> <item>小西瓜</item> </string-array> <string-array name="entriesvalue"> <item>apple</item> <item>banana</item> <item>watermelon</item> </string-array> <string name="defaultvalues">apple</string></resources>

恩,就这么简单~

全部结果会保存到data/data/包名/shared_prefs文件夹下的包名_preferences.xml中,跟sharepreferences一样。



版权声明:本文博客原创文章,博客,未经同意,不得转载。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/117746.html原文链接:https://javaforall.net

(0)
上一篇 2022年1月1日 上午6:00
下一篇 2022年1月1日 上午7:00


相关推荐

  • JS中click事件

    JS中click事件今天在写Ajax请求代码时,js代码遇到了一点问题。最后还专门将一部分代码拷贝到webStorm里面测试,花了好久,发现是个坑。先贴一段代码:第一个按钮的点击事件没有任何反应。第二个按钮就会弹出“你好”。原因:这是因为我使用了click这个作为函数的名字,我在这几类中查询了一下,却没有发现click的踪影,而使用click作为函数名,浏览器既不报错,也不提示,真的很坑啊!类似还有open和clos…

    2022年6月13日
    45
  • linux怎样配置yum源_yum配置源

    linux怎样配置yum源_yum配置源目录一:配置本地yum源二:配置网络yum源更新源可以获取最新的软件信息,以更新您的系统Redhat7配置源YUM(YellowdogUpdaterModified):yum是Redhat系列系统基于RPM包构建的软件更新机制,可以自动解决rpm包之间的依赖关系,所有软件包由集中的yum软件仓库提供。其理念是使用一个中心仓库(repository)管理一部分甚至一…

    2022年8月13日
    7
  • C语言中volatile关键字的作用

    C语言中volatile关键字的作用一.前言1.编译器优化介绍:由于内存访问速度远不及CPU处理速度,为提高机器整体性能,在硬件上引入硬件高速缓存Cache,加速对内存的访问。另外在现代CPU中指令的执行并不一定严格按照顺序执行,没有相关性的指令可以乱序执行,以充分利用CPU的指令流水线,提高执行速度。以上是硬件级别的优化。再看软件一级的优化:一种是在编写代码时由程序员优化,另一种是由编译器进行优化。编译器优化常用的方法有:将内存变

    2022年6月1日
    39
  • PyCharm的配置(背景颜色+字体大小+行号+解释器选择等)

    PyCharm的配置(背景颜色+字体大小+行号+解释器选择等)我的第二篇博客,上一篇是PyCharm安装过程,下面讲解PyCharm的配置。第一:配置PyCharm的背景。打开PyCharm开发环境,使用快捷键Ctrl+"`"(该键位于键盘的左上角,和”~“同一个键位),即可出现下图配置选项。colorScheme:配置背景颜色(有白色,黑色等)codestylescheme:默认为defaultKeymap:快捷键配置,依个人习惯而定Vie…

    2022年6月20日
    27
  • C#接口知识大全收藏建议收藏

    第一节接口慨述接口(interface)用来定义一种程序的协定。实现接口的类或者结构要与接口的定义严格一致。有了这个协定,就可以抛开编程语言的限制(理论上)。接口可以从多个基接口继承,而类或结构可

    2021年12月21日
    40
  • 龙虾还是小龙虾?OpenClaw与有道LobsterAI的“甲壳”对比

    龙虾还是小龙虾?OpenClaw与有道LobsterAI的“甲壳”对比

    2026年3月13日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号