我想弄清楚UI是如何为Android闹钟应用设计的。 这似乎是使用Holo Dark Theme。
包含的屏幕截图是创建/编辑警报Activity
屏幕。它看起来类似于Android Settings。这种情况?因为“打开闹钟”& “振动”行看起来像ChexboxPreferences
。 “铃声”行看起来像RingtonePreference
。 “时间”排怎么样?
正如@eric在以下答案之一的评论中提到的,我正在尝试重新创建一个类似于闹钟应用程序的界面。我不想发送从我的应用程序启动Alarm Manager的意图。
“标签”行怎么样?这与EditText
视图非常相似。你可以在Views
xml代码中包含Preferences
和PreferenceScreen
的组合吗?
ActionBar
还有垂直管道,我不确定这是如何创建的,但是“完成”视图是ImageButton
?
我并不完全相信它是首选项的组合,因为Alarm应用程序可以有多个警报,而不仅仅是一个警报。如果有多个警报并且您不使用多个SharedPreferences
文件,则创建内容提供程序以存储与多个警报相关的信息自然是有意义的。
答案 0 :(得分:8)
股票闹钟应用程序为open source,因此请自行检查。
偏好布局请参阅here:
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
android:title="@string/set_alarm">
<CheckBoxPreference android:key="on"
android:title="@string/enable"/>
<Preference android:key="time"
android:title="@string/time"/>
<com.android.alarmclock.AlarmPreference
android:key="alarm"
android:title="@string/alert"
android:ringtoneType="alarm"
android:showDefault="false"
android:showSilent="false" />
<CheckBoxPreference android:key="vibrate"
android:title="@string/alarm_vibrate"/>
<com.android.alarmclock.RepeatPreference
android:key="setRepeat"
android:title="@string/alarm_repeat" />
<EditTextPreference android:key="label"
android:title="@string/label"
android:dialogTitle="@string/label" />
</PreferenceScreen>
偏好活动请参阅here,请注意,我引用的链接不是来自头版。
一些亮点:
android.preference.Preference
,由TimePickerDialog
支持。Ringtone
是android.preference.RingtonePreference
。android.preference.ListPreferenc
e。答案 1 :(得分:2)
时间偏好没有特定的类。 只需创建一个简单的首选项,并在单击首选项时尝试打开TimePickerDialog。更改时间时更改首选项摘要。
答案 2 :(得分:0)
你想把这个代码行放在列表项目点击(时间点击)
上startActivity(new Intent(android.provider.Settings.ACTION_DATE_SETTINGS));