1<?xml version="1.0" encoding="utf-8"?> 2<!-- 3 ~ Copyright (C) 2015 The Android Open Source Project 4 ~ 5 ~ Licensed under the Apache License, Version 2.0 (the "License"); 6 ~ you may not use this file except in compliance with the License. 7 ~ You may obtain a copy of the License at 8 ~ 9 ~ http://www.apache.org/licenses/LICENSE-2.0 10 ~ 11 ~ Unless required by applicable law or agreed to in writing, software 12 ~ distributed under the License is distributed on an "AS IS" BASIS, 13 ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 ~ See the License for the specific language governing permissions and 15 ~ limitations under the License. 16 --> 17 18<!-- paddingStart is set for the case of full mode. (i.e. table is fully visible) 19 Set android:clipToPadding="false" in order not to clip current_time_indicator. 20 alpha and translationX are given to set them for initial values of enter animation. --> 21<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 22 android:id="@+id/program_guide_table" 23 android:layout_width="match_parent" 24 android:layout_height="wrap_content" 25 android:layout_gravity="center_vertical" 26 android:paddingTop="@dimen/program_guide_table_margin_top" 27 android:paddingBottom="@dimen/program_guide_table_margin_bottom" 28 android:paddingStart="@dimen/program_guide_table_margin_start" 29 android:paddingEnd="0dp" 30 android:translationX="@dimen/program_guide_table_exit_x" 31 android:alpha="0" 32 android:elevation="@dimen/program_guide_table_elevation" 33 android:outlineProvider="paddedBounds" 34 android:clipToPadding="false" > 35 36 <!-- Provides the background for time_row. This is needed in order to place the current time 37 indicator in between the background and the time label. --> 38 <View 39 android:layout_width="match_parent" 40 android:layout_height="@dimen/program_guide_table_header_row_height" 41 android:layout_alignParentTop="true" 42 android:layout_alignParentStart="true" 43 android:layout_alignParentEnd="true" 44 android:background="@drawable/program_guide_table_header_row_background" /> 45 46 <com.android.tv.ui.LocaleAwareTextClock 47 android:id="@+id/clock" 48 android:layout_width="@dimen/program_guide_table_header_column_width" 49 android:layout_height="@dimen/program_guide_table_header_row_height" 50 android:layout_alignParentTop="true" 51 android:layout_alignParentStart="true" 52 android:paddingStart="@dimen/program_guide_table_header_column_padding_start" 53 android:paddingEnd="@dimen/program_guide_table_header_column_padding_end" 54 android:gravity="start|center_vertical" 55 android:textAlignment="viewStart" 56 android:fontFamily="@string/condensed_font" 57 android:textSize="@dimen/program_guide_table_header_row_font_size" 58 android:textColor="@color/program_guide_table_header_row_current_time_text_color" /> 59 60 <ImageView 61 android:id="@+id/current_time_indicator" 62 android:layout_width="wrap_content" 63 android:layout_height="wrap_content" 64 android:layout_alignParentTop="true" 65 android:layout_toEndOf="@id/clock" 66 android:layout_marginTop="-4dp" 67 android:contentDescription="@null" 68 android:src="@drawable/program_guide_time_indicator" /> 69 70 <com.android.tv.guide.TimelineRow 71 android:id="@+id/time_row" 72 android:layout_width="match_parent" 73 android:layout_height="@dimen/program_guide_table_header_row_height" 74 android:layout_alignParentTop="true" 75 android:layout_alignParentEnd="true" 76 android:layout_toEndOf="@id/clock" 77 android:layout_marginStart="@dimen/program_guide_table_header_row_overlap" 78 android:fadingEdgeLength="@dimen/program_guide_table_header_row_fade_length" 79 android:requiresFadingEdge="horizontal" 80 android:background="#00000000" /> 81 82 <com.android.tv.guide.ProgramGrid 83 android:id="@+id/grid" 84 android:layout_width="match_parent" 85 android:layout_height="wrap_content" 86 android:layout_alignParentBottom="true" 87 android:layout_alignParentEnd="true" 88 android:layout_below="@id/time_row" /> 89 90</RelativeLayout> 91