nana4ever
2012-11-15 06:21
采纳率: 95.8%
浏览 8.6k

Listview中在imageview视图下面居中对齐textview

Listview中不能在imageview视图下面对齐文本。以下是我使用的代码:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:gravity="center"     >

    <ImageView 
            android:id="@+id/icon"
            android:layout_width="wrap_content"
            android:layout_height="50dp" />


    <TextView 
            android:id="@+id/name"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/icon"
            android:layout_alignParentBottom="true"  
            android:gravity="center"
            android:singleLine="true"
            android:layout_marginLeft="20dp"
            android:textColor="@color/white"/>


</RelativeLayout>

ListView是这样的:

<ListView    android:id="@+id/grid_view"
            android:layout_width="wrap_content"
            android:layout_height="280sp"
            android:layout_alignParentLeft="true"
            android:layout_marginTop="20dp"
            android:layout_toLeftOf="@+id/imgView"
            android:scrollbars="none"
            android:divider="@null"
            android:gravity="center" >
</ListView>

从数组中用java代码来动态地添加文本和图像:

@Override
    public View getView(int position, View convertView, ViewGroup parent) {         
        ViewHolder holder;
        if (convertView == null) {
            convertView = l_Inflater.inflate(R.layout.gridview_layout, null);
            holder = new ViewHolder();
            holder.imageName = (TextView) convertView.findViewById(R.id.name);
            holder.image = (ImageView) convertView.findViewById(R.id.icon);
            convertView.setTag(holder);
        } else {
            holder = (ViewHolder) convertView.getTag();
        }


        holder.imageName.setText(name[position]);
        holder.image.setImageResource(mThumbIds[position]);

        return convertView;
    }

Imageview下面的textview还是没有居中对齐。请大家帮我解决这个问题。

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • myq_26 2012-11-15 09:19
    已采纳

    在TextView中使用layout_centerHorizontal属性:

    <TextView
            android:id="@+id/name"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/icon"
            android:layout_alignParentBottom="true"  
            android:layout_centerHorizontal="true"
            android:singleLine="true"
            android:textColor="@color/white" />
    
    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • hxn_217 2012-11-19 03:05

    在textview布局中把android:layout_width="wrap_content" 变成android:layout_width="match_parent"

    评论
    解决 无用
    打赏 举报