【安卓笔记】高速的发展设置界面—–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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • zotero使用教程视频_anaconda使用教程

    zotero使用教程视频_anaconda使用教程之前一直想有一个管理文献的好工具,但囿于麻烦都没有去做。最近需要阅读大量的文献,便重新拾起了这个念头,在几经搜索后,选定了Zotero作为文献管理工具。至于为什么选择这个软件,我也许并说不清,网上有

    2022年8月3日
    6
  • 5分钟快速了解MySQL索引的各种类型

    5分钟快速了解MySQL索引的各种类型之所以在索引在面试中经常被问到,就是因为:索引是数据库的良好性能表现的关键,也是对查询能优化最有效的手段。索引能够轻易地把查询性能提高几个数量级。

    2022年6月24日
    28
  • 在python中读取和写入CSV文件(你真的会吗?)「建议收藏」

    在python中读取和写入CSV文件(你真的会吗?)「建议收藏」csv文件的读取

    2022年7月21日
    12
  • python 元类编程_python入门

    python 元类编程_python入门前言通常我们创建类都是使用class类名,但是小伙伴们有没有想过,类是由谁来创建的呢,python中常说的万物皆对象,对象是由类创建的,那类本身也可以看做是对象,类可以由元类type创建type

    2022年7月29日
    8
  • JAVA设计模式之代理模式

    【代理模式应用场景举例】比如在玩“极品飞车”这款游戏,如果游戏者手中的金钱达到了一定的数量就可以到车店买一部性能更高的赛车,那么这个卖车的“车店”就是一个典型的“汽车厂家”的“代理”,他为汽车厂家“提供卖车的服务”给有需求的人士。从面向对象的方面考虑,“销售汽车的代理”也是一个对象,那么这个对象也具有一定的状态,在软件项目中这个对象也具有管理财务进销存的基本功能,那么在设计时就要以面向OOP编

    2022年3月11日
    33
  • merge函数_c语言中的merge函数「建议收藏」

    merge函数_c语言中的merge函数「建议收藏」展开全部merge()是C++标准库的函数,主要实现函数的排序和合并,不仅仅是合并,具体要求参e5a48de588b63231313335323631343130323136353331333431373261照标准库。#include”stdafx.h”#include#include#include#includeusingnamespacestd;boolcomp(constinti,con…

    2022年6月11日
    32

发表回复

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

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