Android Settings(Preferences)开发

在Android的app开发中,很多时候我们的app需要提供用户一个用户体验统一的,友好的setting界面,也就是设置界面。在android系统中,就有一个settings设置的系统应用,专门用户设置系统的一些用户属性。那么这样的setting界面我们怎么开发呢?android为我们提供了一个程序员非常友好的preferences开发包:android.preference。这个开发包中,包含了众多我们在开发app的设置界面时需要的类,这个包的详情页:
https://developer.android.com/reference/android/preference/package-summary.html
下面我们结合google的开发指导文档,讲解一下android中的preferences设置界面的开发。Google的开发知道文档:
https://developer.android.com/guide/topics/ui/settings.html
另外,在开发setting界面的时候,这个界面的设计也是有一定的设置哲学的,在进行自定义开发的时候最好遵循这些设置哲学,不至于使你的app界面显得太过于突兀。Google关于Setting界面设置的建议文档:
https://material.google.com/patterns/settings.html
如果你想打造更好HMI的app以及线上web站点的话,那么你最好遵循这些设计原则。
我的demo代码地址:
https://github.com/CreateChance/AndroidSettingsDemo

为什么使用preferences来开发?

这是一个好问题,人们在做一些事情之前总是喜欢问下为什么。在通常app的开发过程中,我们都会为我们的app提供一个设置界面,易方便用户对我们的应用做一些必要的个性化的设置。但是很多时候,我们需要提供的设置项很多,关系也有些复杂,如果自己通过布局文件的形式去做的话,会比较麻烦,会使得UI布局的层级不够清晰,不容易日后维护和升级。因此,Google为了减轻广大开发者在开发setting界面时的困苦,google推出了preferences包。preferences包,顾名思义,就是使用android中的sharedpreferences技术来将我们的设置数据进行本地持久化,并且提供了内部封装的自动数据同步逻辑,使得我们的开发者只关心自己的app需要有那些设置,这些设置项的位置在哪里等业务逻辑,并不用关系数据怎么存储,数据怎么同步的非业务逻辑,这样一来,就大大减少了。但是由于这里使用的是sharedpreferences技术,也就是xml技术来存储数据的,因此如果你的数据结构和逻辑比较复杂的话那么你最好使用sqlite数据库来存储。这里我们总结一下preferences包的好处:
1. 简化setting界面开发,使得界面和逻辑解耦
2. 简化需要保存的数据结构和逻辑比较简单的情况下的轻量级存储的开发

开发的步骤

使用preferences包来开发基本不需要开发者了解sharedpreferences持久化技术,但是如果你了解的话,可以帮助你更好地理解preferences setting的开发。
在开始之前,我们先看下android.preference包中有哪些类:
这里写图片描述
这些类中,PreferenceActivity和PreferenceFragment是我们界面开发重点关注的类,他们是构建设置界面的基础。这里需要说明一下,从android 3.0(api 11)之后,google一直建议开发使用fragment开发不要使用activity开发,因为fragment的开发使得界面编程更加灵活,代码更加清晰易懂。因此在设置界面开发过程中,google也是推荐使用PreferenceActivity内嵌PreferenceFragment方式进行开发。其中PreferenceActivity只是负责设置选项的设置,具体的设置界面和逻辑需要使用PreferenceFragment完成。

android提供的设置界面组件

android提供了很多用于构建设置界面的ui组件,这些组件就在上面给出的包图中,那些以常用view组件名开头的preference就是android提供的设置界面组件。下面3个是最常用的组件:
1. CheckBoxPreference
这是一个提供check box的设置界面组件,使得用户可以通过勾选的方式进行设置。
2. ListPreference
这个组件当用户单击的时候会弹出一个对话框让用户以单选的形式进行选择。
3. EditTextPreference
这个组件当用户单击的时候会弹出一个对话框,对话框上有一个edit text组件,让用户输入。
下面我给出的demo中就会演示这3个组件的使用,其他的组件使用方式大同小异。

开发第一步:定义PreferenceActivity的header布局xml

前面我们说道,PreferenceActivity在3.0+系统上,只是负责设置界面的显示,不负责具体设置项的问题。因此,为了让PreferenceActivity显示我们的设置项,我们需要定义header文件,这个文件存放在res的xml目录下:
preference_headers.xml

<?xml version="1.0" encoding="utf-8"?>
<preference-headers xmlns:android="http://schemas.android.com/apk/res/android">
    <header
        android:fragment="com.createchance.androidsettingsdemo.PrefsFragmentOne"
        android:icon="@mipmap/ic_launcher"
        android:title="设置1"
        android:summary="第一个设置"/>

    <header
        android:fragment="com.createchance.androidsettingsdemo.PrefsFragmentTwo"
        android:icon="@mipmap/ic_launcher"
        android:title="设置2"
        android:summary="第二个设置"/>

</preference-headers>
  • 0
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 在 Android Studio 中导入设置可以通过以下步骤完成: 1. 打开 Android Studio 。 2. 选择 "File" 菜单。 3. 选择 "Import Settings" 。 4. 选择要导入的设置文件的位置。 5. 点击 "OK" 按钮。 6. 重启 Android Studio 。 导入Android Studio设置可以通过以下步骤完成: 1.打开Android Studio 。 2.选择"File"菜单。 3.选择"Import Settings" 。 4.选择要导入的设置文件的位置。 5.点击"OK"按钮。 6.重启Android Studio。 ### 回答2: 在Android Studio中导入设置非常简单。首先打开Android Studio,然后点击菜单栏中的“File”(文件),接下来选择“Manage IDE Settings”(管理IDE设置)。 在弹出的下拉菜单中,选择“Import Settings”(导入设置)。这将打开一个文件浏览器窗口。 你需要找到存储设置文件的位置。通常情况下,Android Studio的设置文件存储在用户目录下的一个隐藏文件夹中。对于Windows操作系统,路径是C:\Users\[用户名]\.AndroidStudio\[版本号]\config;对于Mac操作系统,路径是/Users/[用户名]/Library/Preferences/AndroidStudio/[版本号]/。 在文件浏览器中,导航到设置文件所在的文件夹。然后,选择“settings.jar”文件并点击“OK”按钮。Android Studio将开始导入该设置文件并应用设置。 完成导入后,Android Studio会提示你重新启动应用程序以使新的设置生效。点击“Restart”(重新启动),Android Studio将关闭并以新的设置重新启动。 导入设置后,Android Studio将应用所包含的插件、代码样式、模板、颜色方案、快捷键等设置。这意味着你可以轻松地在不同的计算机或Android Studio实例之间共享和同步你的首选项和设置。 总之,导入Android Studio设置非常简单和方便,只需几个简单的步骤将你的设置文件导入即可。这使得在不同的开发环境中使用相同的设置变得非常容易。 ### 回答3: 在Android Studio中导入设置非常简单。首先,打开Android Studio并进入“文件”菜单。然后选择“导入设置”,并在导入设置对话框中选择你想要导入的设置文件。你可以选择从一个现有的设置文件导入,或者可以选择从另一个Android Studio用户共享的设置文件导入。 一旦你选择了要导入的设置文件,点击“确定”按钮。Android Studio会立即开始导入设置。导入完成后,你将看到一个消息框,确认设置已成功导入。 导入设置后,Android Studio将使用导入的设置文件中的所有配置选项。这意味着你可以快速设置与其他用户相同的开发环境,而不必手动更改每个配置选项。 总而言之,导入Android Studio设置非常简单。只需选择要导入的设置文件,点击“确定”按钮即可完成导入过程。这使得在不同的开发环境之间共享设置变得非常容易,并且可以节省时间和精力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值