android listview apperence喜欢什么应用程序Listview聊天应用程序

时间:2014-12-12 12:38:23

标签: android layout

大家好我需要像this这样的聊天屏幕开发类似什么应用的布局 在此我想在聊天文本视图完成后显示时间。

为此我做了

<RelativeLayout
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/blue" >

                <TextView
                    android:id="@+id/tv_message_chat_item_f"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginLeft="2dp"
                    android:layout_marginTop="2dp"
                    android:gravity="left|center"

                    android:paddingBottom="@dimen/one_dp"
                    android:paddingLeft="@dimen/fifteen_dp"
                    android:paddingRight="@dimen/five_dp"
                    android:paddingTop="@dimen/one_dp"
                      android:textAppearance="?android:attr/textAppearanceMedium"
                    android:text="fgfdgdf rete tretretret rtrtrwtw fgdfr grtwerwerewr ewrwerew" />

                <TextView
                    android:id="@+id/tv_message_time_f"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentRight="true"
                    android:layout_below="@+id/tv_message_chat_item_f"
                    android:layout_marginBottom="2dp"
                   android:paddingRight="@dimen/five_dp"
                    android:gravity="right"
                    android:paddingBottom="@dimen/one_dp"
                    android:text="fgfdg"
                    android:textAppearance="?android:attr/textAppearanceSmall" />



            </RelativeLayout>

但不使用大消息(时间texview设置不正确)

3 个答案:

答案 0 :(得分:1)

<LinearLayout
        android:orientation="horizontal"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_alignParentLeft="true"
        android:gravity="bottom"
        android:background="@drawable/blue"
        android:layout_alignParentStart="true" android:weightSum="10">
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textAppearance="?android:attr/textAppearanceMedium"
            android:text="Hi"
            android:layout_weight="1"
            android:id="@+id/textView"
            android:gravity="bottom"
            android:layout_centerVertical="true"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true" />

        <TextView
            android:id="@+id/textView4"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:gravity="bottom"
            android:layout_marginStart="10dp"
            android:text="Small Text"
            android:textAppearance="?android:attr/textAppearanceSmall" />

    </LinearLayout>

答案 1 :(得分:0)

假设您的textView3是带有&#34;大消息&#34;您应该首先利用相对布局功能并使用android:layout_below="@id/textview2"这样可以防止与textView2重叠,而不是仅仅自下而上对齐所有内容。

  <TextView
                android:id="@+id/textView3"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_below="@id/textView2"
                android:layout_centerHorizontal="true"
                android:text="Small Text"
                android:textAppearance="?android:attr/textAppearanceSmall" />

然后在您设置了TextView之后,这将保留您的时间&#39;你可以使用像

这样的东西
   <TextView
                    android:id="@+id/textView3"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_below="@id/textView2"
                    android:gravity="right"
                    android:layout_alignParentRight="true"
                    android:text="12:00 pm"
                    android:textAppearance="?android:attr/textAppearanceSmall" />

Gravity 正确将允许文本从右到左放置,因为显示时间通常不会超过6或7个字符,这将有所帮助。

希望它可以解决您的问题。

答案 2 :(得分:0)

您需要使用9个补丁实现ImageViews(此处:link) 还有一个listview,它可以处理ListItems的CustomLayouts(使用9Patch ImageView)。

我认为你能够实现列表视图,因此我不会在这里深入探讨。 迎接。