`
byandby
  • 浏览: 1688323 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

android 首选项 RingtonePreference

阅读更多
    RingtonePreference 专门处理铃声。可以在应用程序中使用它为用户提供一个选项,以便选择某个铃声作为首选项,觉得这个还是比较有用的。

     下面是我们这个示例的XML 文件 ringtone.xml 此文件的存放路径是 /res/xml/ringtone.xml 
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
	android:key="ringtong_option_preference" android:title="My Preference"
	android:summary="Set Ring Tone Preferences">
	<RingtonePreference 
	     android:key="ring_tone_pref"
		 android:title="Set Ringtone Preference" 
		 android:showSilent="true"
		 android:ringtoneType="alarm"
		 android:summary="Set Ringtone" />
</PreferenceScreen>


  下面是我们的 PreferenceActivity 类 RingtonePreferenceActivity
package xiaohang.zhimeng;

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

public class RingtonePreferenceActivity extends PreferenceActivity {

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		addPreferencesFromResource(R.xml.ringtone);
	}
}

   下面给大家看一下运行效果。





    当用户选择 Set Ringtone Preference时,首选项框架将显示一个 ListPreference,其中包含设备上的铃声。用户可以选择一个铃声,然后选择 确定 或 取消 按钮。如果点击 确定 按钮 所做的选择将持久化到首选项存储中。请注意,使用铃声,首选项中存储的值是所选铃声的URI,除非选择 Silent 也就是静音,对于这种情况,存储的值为 空字符串,下面来两张图 当我们选择静音的时候 看看给我们存储是什么 。


大家稍微仔细一看就可以看出 给我们存储是 空字符串

  下面在看看 当我们选择 一个铃声的时候 存储的是什么


从上图 就可以看出 存储的是一个 URI  content://media/external/audio/media/3

   如果大家的模拟器里边没有铃声,可以自己添加,将音乐文件复制到 SD 卡, 然后再 打开模拟器上边的音乐 播放器



然后 随便打开一首歌曲 点击 Menu按钮 选择 用作铃声  就可以设置为铃声了。



   大家可能发现了 RingtonePreference 有一些属性 和其它的首选项不太一样 比如 showSilent 和  ringtoneType 。可以使用 showSilent在铃声列表中包含静音铃声,使用 ringtoneType 来限制在列表中显示的铃声类型。此属性的可能值包括 ringtone、notification、alarm和all。
  

    源码请大家参考 【android 探索首选项框架 ListPreference】这篇文章http://byandby.iteye.com/blog/1044916 下载源码 稍作修改即可。
  • 大小: 14.6 KB
  • 大小: 32.1 KB
  • 大小: 48.5 KB
  • 大小: 63.2 KB
  • 大小: 2.1 KB
  • 大小: 34.9 KB
分享到:
评论

相关推荐

    精通ANDROID 3(中文版)1/2

    9.3 以编程方式操作首选项  9.4 使用首选项保存状态  9.5 参考资料  9.6 小结  第10章 探索安全性和权限  10.1 理解Android安全性模型  10.1.1 安全性概念概述  10.1.2 为部署签名应用程序  10.2 ...

    Android-Support-Preference-V7-Fix:Android androidx.preference支持库存在一些问题,此lib试图修复它们

    扩展的AndroidX首选项该库旨在解决在官方AndroidX首选项库中发现的一些问题。 另外,还有可用,例如RingtonePreference , DatePickerPreference和TimePickerPreference 。捐款如果您想支持我,您可以通过PayPal捐款...

    android preference framework demo

    此DEMO内含基本的android preference framework的简单介绍,包括CheckboxPreference, RingtonePreference, EditTextPreference以及ListPreference。主要探究了一下android 怎么通过使用preference从而达到对用户定制...

    精通Android 3 (中文版)2/2

    9.3 以编程方式操作首选项  9.4 使用首选项保存状态  9.5 参考资料  9.6 小结  第10章 探索安全性和权限  10.1 理解Android安全性模型  10.1.1 安全性概念概述  10.1.2 为部署签名应用程序  10.2 ...

    Android Preference组件使用

    Android提供preference这个键值对的方式来处理这种情况,自动保存这些数据,并立时生效,同时Android提供一种类似的layout的方式来进行Preference的布局。 Preference组件有ListPreference,EditTextPreference,...

    RingtonePreferenceRingtonePreferenceRingtonePreferenceRingtonePreference

    RingtonePreferenceRingtonePreferenceRingtonePreferenceRingtonePreferenceRingtonePreferenceRingtonePreferenceRingtonePreferenceRingtonePreferenceRingtonePreferenceRingtonePreference

    Android学习笔记之Shared Preference

    需要向里面添加首选项控件,原生的这些控件有:CheckBoxPreference、EditTextPreference、ListPreference、MultiSelectListPreference和RingtonePreference,每种控件至少包含4种属性:android:key,android:title,...

Global site tag (gtag.js) - Google Analytics