s2c2010
s2c2010
2015-01-14 06:51

Android布局设计及实现的问题

  • 布局
  • android
  • 效果

图片说明
实现如图片的效果,该图片仅为ListView的一个item。Item的大布局为RelativeLayout(其背景是圆角图片),内部的图片为ImageView,第一行字为一个TextView,第二行字及按钮为LinearLayout。问题有:1、图片不能靠顶填充,左右有间隙或上下有间隙,即使使用match_parent;2、最后一行文字距底部的空隙过大,设置padding、margin等无效果。
请各位看官给点意见,拜谢~

附List_view_item.xml

<?xml version="1.0" encoding="utf-8"?>
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/ic_topic_item_bg"
android:layout_gravity="fill_vertical"
android:gravity="center|fill" >

<ImageView
    android:id="@+id/square_topic_image"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true"
    android:contentDescription="@null"
    android:src="@drawable/default_topic_thumb" />

<LinearLayout
    android:id="@+id/square_topic_item_fl"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_below="@id/square_topic_image"
    android:layout_centerHorizontal="true"
    android:orientation="vertical"
    android:paddingLeft="@dimen/square_topic_item_padding"
    android:paddingRight="@dimen/square_topic_item_padding" >

    <RelativeLayout
        android:id="@+id/square_topic_title_rl"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="fill_horizontal" >

        <TextView
            android:id="@+id/square_topic_title_tv"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:alpha="50"
            android:gravity="left|center"
            android:textColor="@android:color/black"
            android:textSize="@dimen/square_topic_title_size" />

        <LinearLayout
            android:id="@+id/topic_praise_favourite_rl"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:gravity="center|fill"
            android:orientation="horizontal" >

            <TextView
                android:id="@+id/topic_praise"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:drawableLeft="@drawable/ic_small_praise_d"
                android:padding="@dimen/square_topic_praise_favourite_space"
                android:textColor="@color/dark_gray"
                android:textSize="@dimen/square_topic_text_size" />

            <View
                android:layout_width="1dp"
                android:layout_height="match_parent"
                android:layout_gravity="center"
                android:background="@color/dark_gray"
                android:padding="@dimen/square_topic_praise_favourite_space" />

            <TextView
                android:id="@+id/topic_favourite"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:drawableLeft="@drawable/ic_small_favourite_d"
                android:padding="@dimen/square_topic_praise_favourite_space"
                android:textColor="@color/dark_gray"
                android:textSize="@dimen/square_topic_text_size" />
        </LinearLayout>
    </RelativeLayout>

    <TextView
        android:id="@+id/square_topic_introduction_tv"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="0dp"
        android:gravity="left|center"
        android:textColor="@android:color/black"
        android:textSize="@dimen/square_topic_text_size" />
</LinearLayout>


  • 点赞
  • 回答
  • 收藏
  • 复制链接分享

3条回答