I am trying to figure out how the UI was designed for the Android Alarm Clock app. This appears to be using the Holo Dark Theme.
The screenshot included is the Create/Edit Alarm Activity
screen. It looks similar to Android Settings. Is this case? Because the "Turn the alarm on" & "Vibrate" rows look like ChexboxPreferences
. The "Ringtone" row looks like a RingtonePreference
. What about the "Time" row?
As @eric mentioned in the comments to one of the answers below, I am trying to recreate a similar interface to the alarm clock app. I do not want to send an intent to start the Alarm Manager from my app.
What about the "Label" row? That functions a lot like an EditText
view. Can you have a combination of Views
and Preferences
inside a PreferenceScreen
xml tag?
Also the ActionBar
has a vertical pipe, I am not sure how this was created but is the "Done" view an ImageButton
?
I am not completely convinced that it is a combination of Preferences, since the Alarm app can have multiple alarms and not just one alarm. If there are multiple alarms and you don't use multiple SharedPreferences
files, it would naturally make sense to create a content provider to store the information related to multiple alarms.
The stock alarm clock app is open source, so check it out by yourself.
Preference Layout see 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>
Preference activity see here, note that, the links I referenced are not from the head revision.
Some highlights:
android.preference.Preference
, backed by TimePickerDialog
.Ringtone
is a customized implementation of android.preference.RingtonePreference
.android.preference.ListPreferenc
e.If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With