Xml文件  |  195行  |  8.02 KB

<?xml version="1.0" encoding="utf-8"?>
<!--
     Copyright (C) 2013 Google Inc.
     Licensed to The Android Open Source Project.

     Licensed under the Apache License, Version 2.0 (the "License");
     you may not use this file except in compliance with the License.
     You may obtain a copy of the License at

          http://www.apache.org/licenses/LICENSE-2.0

     Unless required by applicable law or agreed to in writing, software
     distributed under the License is distributed on an "AS IS" BASIS,
     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     See the License for the specific language governing permissions and
     limitations under the License.
-->

<!-- This layout is used as a template to create custom view CanvasConversationHeaderView
    in normal mode. To be able to get the correct measurements, every source field should
    be populated with data here. E.g:
    - Text View should set text to a random long string (android:text="@string/long_string")
    - Image View should set source to a specific asset -->
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:paddingBottom="1dp"
    android:orientation="vertical">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="16dp"
        android:layout_marginRight="16dp"
        android:orientation="horizontal">

        <View
            android:id="@+id/contact_image"
            android:layout_width="48dp"
            android:layout_height="48dp"
            android:layout_marginRight="12dp"
            android:layout_marginTop="12dp"
            android:layout_marginBottom="12dp" />

        <LinearLayout
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:orientation="vertical">

            <RelativeLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content">

                <!-- these views overlap horizontally, that's okay. -->
                <!-- we are only interested in the left edge of senders and the right edge -->
                <!-- of the date. -->
                <!-- sendersWidth, clipX, and dateX are dynamically determined later. -->

                <FrameLayout
                    android:id="@+id/senders_decoration"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content">

                    <!-- for Email -->
                    <!-- top margin should be 12dp, but the asset has 2dp built-in padding -->
                    <ImageView
                        android:id="@+id/reply_state"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_marginTop="10dp"
                        android:layout_marginRight="8dp"
                        android:src="@drawable/ic_badge_reply_holo_light" />

                    <!-- for Gmail -->
                    <ImageView
                        android:id="@+id/personal_indicator"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_marginTop="11dp"
                        android:layout_marginLeft="-2dp"
                        android:layout_marginRight="2dp"
                        android:src="@drawable/ic_email_caret_single" />

                </FrameLayout>

                <TextView
                    android:id="@+id/senders"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_toRightOf="@id/senders_decoration"
                    android:layout_marginTop="12dp"
                    android:textSize="18sp"
                    android:lines="1"
                    android:includeFontPadding="false"
                    android:text="@string/long_string" />

                <ImageView
                    android:id="@+id/info_icon"
                    android:layout_width="14dp"
                    android:layout_height="14dp"
                    android:layout_alignParentRight="true"
                    android:layout_marginTop="10dp"
                    android:layout_marginLeft="4dp" />

                <TextView
                    android:id="@+id/date"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_toLeftOf="@id/info_icon"
                    android:layout_marginTop="12dp"
                    android:paddingLeft="8dp"
                    android:textSize="12sp"
                    android:lines="1"
                    android:includeFontPadding="false"
                    android:text="@string/long_string" />

                <!-- top margin should be 12dp, but the asset has 8dp built-in padding -->
                <!-- left padding should be 8dp, but the asset has 2dp built-in padding -->
                <ImageView
                    android:id="@+id/paperclip"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_toLeftOf="@id/date"
                    android:layout_marginTop="4dp"
                    android:paddingLeft="6dp"
                    android:src="@drawable/ic_attachment_holo_light" />

                <!-- for Email -->
                <View android:id="@+id/color_block"
                    android:layout_width="@dimen/color_block_width"
                    android:layout_height="@dimen/color_block_height"
                    android:layout_alignParentRight="true" />

            </RelativeLayout>

            <RelativeLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginBottom="12dp">

                <ImageView
                    android:id="@+id/star"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignBottom="@+id/subject"
                    android:layout_alignParentRight="true"
                    android:layout_marginTop="-1dp"
                    android:layout_marginRight="-9dp"
                    android:src="@drawable/ic_btn_star_off" />

                <TextView
                    android:id="@id/subject"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_toLeftOf="@id/star"
                    android:lines="2"
                    android:textSize="13sp"
                    android:includeFontPadding="false"
                    android:text="@string/long_string" />

            </RelativeLayout>

        </LinearLayout>

    </LinearLayout>
    <!-- There are 12dp bottom margins here for when there are no folders -->

    <include
        layout="@layout/conversation_attachment_previews"/>

    <!-- Margin between attachment previews and folders. 12dp bottom margins match above -->
    <View
        android:id="@+id/attachment_previews_bottom_margin"
        android:layout_width="0dp"
        android:layout_height="@dimen/attachment_preview_margin_bottom"
        android:layout_marginBottom="12dp"
        android:visibility="gone" />

    <!-- Folders should be ~5dp below the subject *baseline*, so we cancel out part of the 12dp bottom margin above -->
    <TextView
        android:id="@+id/folders"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="-10dp"
        android:fontFamily="sans-serif-light"
        android:includeFontPadding="false"
        android:text="@string/long_string"
        android:textSize="11sp"
        android:lines="1"
        android:minHeight="16dp" />

</LinearLayout>