ListView页脚不在中心

问题描述

| 知道为什么列表视图的页脚始终位于左侧吗?这是我的xml布局。由于需要加载更多数据,因此仅添加删除了页脚。我希望TextView和ProgressBar处于中心
<LinearLayout
xmlns:android=\"http://schemas.android.com/apk/res/android\"
android:layout_width=\"fill_parent\"
android:layout_height=\"wrap_content\"
android:paddingTop=\"10dp\"
android:paddingBottom=\"10dp\"
android:orientation=\"horizontal\" 
android:gravity=\"center\">

<TextView
    android:layout_width=\"wrap_content\" 
    android:layout_height=\"wrap_content\"
    android:gravity=\"center\"
    android:textSize=\"12sp\"
    android:textColor=\"@color/author_text\"
    android:text=\"LOADING DATA...\"
    />

<ProgressBar 
    android:layout_width=\"15dp\" 
    android:layout_height=\"15dp\" 
    android:layout_marginLeft=\"10dp\"
    />
</LinearLayout>
    

解决方法

        好的,所以问题不在于OP中显示的页脚视图。它确实可以正常工作。问题是我的ListView的layout_width属性设置为wrap_content。这适用于所有列表渲染器,但不适用于页脚。将ListView更改为fill_parent修复了它
<ListView 
    android:id=\"@+id/android:list\"
    android:layout_width=\"fill_parent\" 
    android:layout_height=\"wrap_content\" 
    style=\"@style/MyList\"
    />
谢谢帮派 [解决了]     ,        水平的LinearLayout将其视图从左到右放置。在确定水平位置时,它将忽略任何重力或layout_gravity属性(尽管它们会影响垂直位置)。您将需要使用RelativeLayout或嵌套垂直的LinearLayout以获得视图的水平居中。 或者,可以将TextView的layout_weight设置为1,这将使其占用任何额外的空间。由于它将文本居中,因此应该可以给您想要的效果。 编辑:现在我了解您想要什么,这应该做到这一点:
<LinearLayout
    xmlns:android=\"http://schemas.android.com/apk/res/android\"
    android:layout_width=\"fill_parent\"
    android:layout_height=\"wrap_content\"
    android:paddingTop=\"10dp\"
    android:paddingBottom=\"10dp\"
    android:orientation=\"vertical\"
    >

    <LinearLayout
        android:layout_width=\"wrap_content\"
        android:layout_height=\"wrap_content\"
        android:orientation=\"horizontal\"
        android:gravity=\"center\"
        android:layout_gravity=\"center_horizontal\">
        <TextView
            android:layout_width=\"wrap_content\" 
            android:layout_height=\"wrap_content\"
            android:gravity=\"center\"
            android:textSize=\"12sp\"
            android:textColor=\"@color/author_text\"
            android:text=\"LOADING DATA...\"
            />

        <ProgressBar 
            android:layout_width=\"15dp\" 
            android:layout_height=\"15dp\" 
            android:layout_marginLeft=\"10dp\"
            />
    </LinearLayout>
</LinearLayout>
您可以通过某种方式使用RelativeLayout来避免嵌套的LinearLayouts,但这首先想到了。     ,        尝试将其layout_width设置为
match_parent