问题描述
|
知道为什么列表视图的页脚始终位于左侧吗?这是我的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