快速开发设置界面-----PreferenceActivity

2024-06-09 23:18

本文主要是介绍快速开发设置界面-----PreferenceActivity,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

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


通常做法是自己定义布局,然后在代码里面添加响应函数,并将结果保存到Sharedpreferences中。
android给我们提供了PreferenceActivity来简化开发设置界面。
你只需这样做:
1.创建一个类继承PreferenceActivity,并导入设置界面布局:

[java]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. package com.example.preferenceactivitydemo1;  
  2. import android.os.Bundle;  
  3. import android.preference.PreferenceActivity;  
  4. public class MainActivity extends PreferenceActivity  
  5. {  
  6.     @SuppressWarnings("deprecation")  
  7.     @Override  
  8.     protected void onCreate(Bundle savedInstanceState)  
  9.     {  
  10.         super.onCreate(savedInstanceState);  
  11.         addPreferencesFromResource(R.xml.main_preference);  
  12.     }  
  13.       
  14. }  

2.在res目录下添加xml文件夹,并创建一个名为main_preference(即代码中引用的资源文件)的文件.
3.编写资源文件。
上图设置界面对应的资源文件如下:
[html]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     android:title="标题" >  
  4.     <PreferenceCategory  
  5.         android:summary="分组1"  
  6.         android:title="分组1标题" >  
  7.         <ListPreference  
  8.             android:defaultValue="@string/defaultvalues"  
  9.             android:dialogTitle="对话框标题"  
  10.             android:entries="@array/entries"  
  11.             android:entryValues="@array/entriesvalue"  
  12.             android:key="myListPreference"  
  13.             android:summary="标题说明"  
  14.             android:title="小标题" />  
  15.         <CheckBoxPreference  
  16.             android:key="doubi"  
  17.             android:summaryOff="逗比模式关闭"  
  18.             android:summaryOn="逗比模式开启"  
  19.             android:title="逗比模式" >  
  20.         </CheckBoxPreference>  
  21.     </PreferenceCategory>  
  22.     <PreferenceCategory  
  23.         android:summary="分组2"  
  24.         android:title="分组2标题" >  
  25.         <SwitchPreference  
  26.             android:key="fly"  
  27.             android:summaryOff="已关闭飞行模式"  
  28.             android:summaryOn="已开启飞行模式"  
  29.             android:switchTextOff="关闭"  
  30.             android:switchTextOn="开启"  
  31.             android:title="飞行模式" >  
  32.         </SwitchPreference>  
  33.         <EditTextPreference  
  34.             android:defaultValue="zhangsan"  
  35.             android:dialogTitle="编辑姓名"  
  36.             android:key="name"  
  37.             android:summary="编辑您的姓名"  
  38.             android:title="编辑" >  
  39.         </EditTextPreference>  
  40.     </PreferenceCategory>  
  41. </PreferenceScreen>  

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


[html]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <resources>  
  3.     <string name="app_name">PreferenceActivityDemo1</string>  
  4.     <string name="action_settings">Settings</string>  
  5.     <string name="hello_world">Hello world!</string>  
  6.     <string-array name="entries">  
  7.         <item>小苹果</item>  
  8.         <item>小香蕉</item>  
  9.         <item>小西瓜</item>  
  10.     </string-array>  
  11.     <string-array name="entriesvalue">  
  12.         <item>apple</item>  
  13.         <item>banana</item>  
  14.         <item>watermelon</item>  
  15.     </string-array>  
  16.     <string name="defaultvalues">apple</string>  
  17. </resources>  

恩,就这么简单~

所有结果会保存到data/data/包名/shared_prefs目录下的包名_preferences.xml中,跟sharepreferences一样。


转自: http://blog.csdn.net/chdjj/article/details/38130345

这篇关于快速开发设置界面-----PreferenceActivity的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1046578

相关文章

Python设置Cookie永不超时的详细指南

《Python设置Cookie永不超时的详细指南》Cookie是一种存储在用户浏览器中的小型数据片段,用于记录用户的登录状态、偏好设置等信息,下面小编就来和大家详细讲讲Python如何设置Cookie... 目录一、Cookie的作用与重要性二、Cookie过期的原因三、实现Cookie永不超时的方法(一)

SpringBoot开发中十大常见陷阱深度解析与避坑指南

《SpringBoot开发中十大常见陷阱深度解析与避坑指南》在SpringBoot的开发过程中,即使是经验丰富的开发者也难免会遇到各种棘手的问题,本文将针对SpringBoot开发中十大常见的“坑... 目录引言一、配置总出错?是不是同时用了.properties和.yml?二、换个位置配置就失效?搞清楚加

Linux如何快速检查服务器的硬件配置和性能指标

《Linux如何快速检查服务器的硬件配置和性能指标》在运维和开发工作中,我们经常需要快速检查Linux服务器的硬件配置和性能指标,本文将以CentOS为例,介绍如何通过命令行快速获取这些关键信息,... 目录引言一、查询CPU核心数编程(几C?)1. 使用 nproc(最简单)2. 使用 lscpu(详细信

CSS3打造的现代交互式登录界面详细实现过程

《CSS3打造的现代交互式登录界面详细实现过程》本文介绍CSS3和jQuery在登录界面设计中的应用,涵盖动画、选择器、自定义字体及盒模型技术,提升界面美观与交互性,同时优化性能和可访问性,感兴趣的朋... 目录1. css3用户登录界面设计概述1.1 用户界面设计的重要性1.2 CSS3的新特性与优势1.

Qt 设置软件版本信息的实现

《Qt设置软件版本信息的实现》本文介绍了Qt项目中设置版本信息的三种常用方法,包括.pro文件和version.rc配置、CMakeLists.txt与version.h.in结合,具有一定的参考... 目录在运行程序期间设置版本信息可以参考VS在 QT 中设置软件版本信息的几种方法方法一:通过 .pro

Python中对FFmpeg封装开发库FFmpy详解

《Python中对FFmpeg封装开发库FFmpy详解》:本文主要介绍Python中对FFmpeg封装开发库FFmpy,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录一、FFmpy简介与安装1.1 FFmpy概述1.2 安装方法二、FFmpy核心类与方法2.1 FF

基于Python开发Windows屏幕控制工具

《基于Python开发Windows屏幕控制工具》在数字化办公时代,屏幕管理已成为提升工作效率和保护眼睛健康的重要环节,本文将分享一个基于Python和PySide6开发的Windows屏幕控制工具,... 目录概述功能亮点界面展示实现步骤详解1. 环境准备2. 亮度控制模块3. 息屏功能实现4. 息屏时间

PostgreSQL 默认隔离级别的设置

《PostgreSQL默认隔离级别的设置》PostgreSQL的默认事务隔离级别是读已提交,这是其事务处理系统的基础行为模式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价... 目录一 默认隔离级别概述1.1 默认设置1.2 各版本一致性二 读已提交的特性2.1 行为特征2.2

一文详解MySQL如何设置自动备份任务

《一文详解MySQL如何设置自动备份任务》设置自动备份任务可以确保你的数据库定期备份,防止数据丢失,下面我们就来详细介绍一下如何使用Bash脚本和Cron任务在Linux系统上设置MySQL数据库的自... 目录1. 编写备份脚本1.1 创建并编辑备份脚本1.2 给予脚本执行权限2. 设置 Cron 任务2

一文详解如何在idea中快速搭建一个Spring Boot项目

《一文详解如何在idea中快速搭建一个SpringBoot项目》IntelliJIDEA作为Java开发者的‌首选IDE‌,深度集成SpringBoot支持,可一键生成项目骨架、智能配置依赖,这篇文... 目录前言1、创建项目名称2、勾选需要的依赖3、在setting中检查maven4、编写数据源5、开启热