Moved TimerViewHolder child view attributes to styles.xml

This commit is contained in:
Phillip Hsu 2016-08-31 23:54:34 -07:00
parent 2d6b21a3c9
commit fcf2cacbbb
3 changed files with 54 additions and 86 deletions

View File

@ -12,75 +12,39 @@
<TextView
android:id="@+id/label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:hint="@string/label"
android:textSize="@dimen/text_size_medium"
android:maxLines="1"
android:ellipsize="end"
android:padding="@dimen/cardview_margin"/>
style="@style/TimerLabel"/>
<com.philliphsu.clock2.timers.CountdownChronometer
android:id="@+id/duration"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/label"
android:layout_centerHorizontal="true"
android:fontFamily="sans-serif-thin"
android:textSize="@dimen/text_size_display_2"/>
style="@style/TimerCountdown"/>
<!--The default style has padding start and end, so we remove both-->
<com.philliphsu.clock2.UntouchableSeekBar
android:id="@+id/seek_bar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/duration"
android:paddingStart="0dp"
android:paddingEnd="0dp"
android:splitTrack="false"/>
style="@style/TimerSeekBar"/>
<!-- Fake icon, so use dp for textSize -->
<TextView
android:id="@+id/add_one_minute"
android:layout_width="@dimen/cardview_action_icon_size"
android:layout_height="@dimen/cardview_action_icon_size"
android:src="@drawable/ic_half_day_1_24dp"
android:background="?selectableItemBackground"
android:layout_below="@id/seek_bar"
android:gravity="center"
android:text="@string/add_one_minute_icon_text"
android:textSize="@dimen/add_one_minute_text_size"
android:textColor="?attr/themedIconTint"
android:textStyle="bold"
android:layout_alignParentStart="true"
android:layout_marginStart="@dimen/cardview_action_icon_margin"/>
style="@style/TimerAction.AddOneMinute"/>
<ImageButton
android:id="@+id/start_pause"
android:layout_width="@dimen/cardview_action_icon_size"
android:layout_height="@dimen/cardview_action_icon_size"
android:src="@drawable/ic_start_24dp"
android:background="?selectableItemBackground"
android:tint="?attr/themedIconTint"
android:layout_below="@id/seek_bar"
android:layout_centerHorizontal="true"/>
android:layout_centerHorizontal="true"
style="@style/TimerAction"/>
<ImageButton
android:id="@+id/stop"
android:layout_width="@dimen/cardview_action_icon_size"
android:layout_height="@dimen/cardview_action_icon_size"
android:src="@drawable/ic_stop_24dp"
android:background="?selectableItemBackground"
android:tint="?attr/themedIconTint"
android:layout_below="@id/seek_bar"
android:layout_alignParentEnd="true"
android:layout_marginEnd="@dimen/cardview_action_icon_margin"/>
<Space
android:layout_width="0dp"
android:layout_height="@dimen/cardview_action_icon_margin"
android:layout_below="@id/stop"/>
style="@style/TimerAction"/>
</RelativeLayout>

View File

@ -13,75 +13,39 @@
<TextView
android:id="@+id/label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:hint="@string/label"
android:textSize="@dimen/text_size_medium"
android:maxLines="1"
android:ellipsize="end"
android:padding="@dimen/cardview_margin"/>
style="@style/TimerLabel"/>
<com.philliphsu.clock2.timers.CountdownChronometer
android:id="@+id/duration"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/label"
android:layout_centerHorizontal="true"
android:fontFamily="sans-serif-thin"
android:textSize="@dimen/text_size_display_2"/>
style="@style/TimerCountdown"/>
<!--The default style has padding start and end, so we remove both-->
<com.philliphsu.clock2.UntouchableSeekBar
android:id="@+id/seek_bar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/duration"
android:paddingStart="0dp"
android:paddingEnd="0dp"
android:splitTrack="false"/>
style="@style/TimerSeekBar"/>
<!-- Fake icon, so use dp for textSize -->
<TextView
android:id="@+id/add_one_minute"
android:layout_width="@dimen/cardview_action_icon_size"
android:layout_height="@dimen/cardview_action_icon_size"
android:src="@drawable/ic_half_day_1_24dp"
android:background="?selectableItemBackground"
android:layout_below="@id/seek_bar"
android:gravity="center"
android:text="@string/add_one_minute_icon_text"
android:textSize="@dimen/add_one_minute_text_size"
android:textColor="?attr/themedIconTint"
android:textStyle="bold"
android:layout_alignParentStart="true"
android:layout_marginStart="@dimen/cardview_action_icon_margin"/>
style="@style/TimerAction.AddOneMinute"/>
<ImageButton
android:id="@+id/start_pause"
android:layout_width="@dimen/cardview_action_icon_size"
android:layout_height="@dimen/cardview_action_icon_size"
android:src="@drawable/ic_start_24dp"
android:background="?selectableItemBackground"
android:tint="?attr/themedIconTint"
android:layout_below="@id/seek_bar"
android:layout_centerHorizontal="true"/>
android:layout_centerHorizontal="true"
style="@style/TimerAction"/>
<ImageButton
android:id="@+id/stop"
android:layout_width="@dimen/cardview_action_icon_size"
android:layout_height="@dimen/cardview_action_icon_size"
android:src="@drawable/ic_stop_24dp"
android:background="?selectableItemBackground"
android:tint="?attr/themedIconTint"
android:layout_below="@id/seek_bar"
android:layout_alignParentEnd="true"
android:layout_marginEnd="@dimen/cardview_action_icon_margin"/>
<Space
android:layout_width="0dp"
android:layout_height="@dimen/cardview_action_icon_margin"
android:layout_below="@id/stop"/>
style="@style/TimerAction"/>
</RelativeLayout>

View File

@ -157,4 +157,44 @@
<item name="behavior_peekHeight">@dimen/peek_height_upper_limit</item>
</style>
<style name="TimerLabel" parent="TextAppearance.AppCompat.Subhead">
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:layout_centerHorizontal">true</item>
<item name="android:hint">@string/label</item>
<item name="android:ellipsize">end</item>
<item name="android:maxLines">1</item>
<item name="android:padding">@dimen/cardview_margin</item>
</style>
<style name="TimerCountdown" parent="TextAppearance.AppCompat.Display2">
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:fontFamily">sans-serif-light</item>
<item name="android:layout_centerHorizontal">true</item>
</style>
<style name="BaseSeekBar">
<item name="android:layout_width">match_parent</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:paddingStart">0dp</item>
<item name="android:paddingEnd">0dp</item>
</style>
<style name="TimerSeekBar" parent="BaseSeekBar">
<item name="android:splitTrack">false</item> <!--TODO: Move to v21-->
</style>
<style name="TimerAction">
<item name="android:layout_width">@dimen/cardview_action_icon_size</item>
<item name="android:layout_height">@dimen/cardview_action_icon_size</item>
<item name="android:background">?selectableItemBackground</item>
<item name="android:tint">?attr/themedIconTint</item>
<item name="android:layout_marginStart">@dimen/cardview_action_icon_margin</item>
<item name="android:layout_marginEnd">@dimen/cardview_action_icon_margin</item>
<item name="android:layout_marginBottom">@dimen/cardview_action_icon_margin</item>
</style>
<style name="TimerAction.AddOneMinute">
<item name="android:gravity">center</item>
<item name="android:text">@string/add_one_minute_icon_text</item>
<item name="android:textSize">@dimen/add_one_minute_text_size</item>
<item name="android:textColor">?attr/themedIconTint</item>
<item name="android:textStyle">bold</item>
</style>
</resources>