如何在android上设置Xml上的View布局重力?

问题描述 投票:0回答:5

我尝试使用此库添加弹跳点加载 com.wang.avi:库:2.1.3

但是视图总是在“左边” But the view is always in the

这是我的xml代码

    <LinearLayout
            android:id="@+id/linear7"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:gravity="center_horizontal|center_vertical"
            android:orientation="vertical"
            android:layout_gravity="center_horizontal|center_vertical">
            <com.wang.avi.AVLoadingIndicatorView
                android:id="@+id/here"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:padding="8dp"
                android:gravity="center_horizontal|center_vertical"
                android:orientation="horizontal"
                app:indicatorName="BallPulseIndicator"
                app:indicatorColor="#FF9800"/>
        </LinearLayout>
java android xml android-layout layout
5个回答
0
投票

试试这个。它应该有效:

   <LinearLayout
            android:id="@+id/linear7"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:gravity="center"
            android:orientation="vertical"
            android:layout_gravity="center_horizontal|center_vertical">
            <com.wang.avi.AVLoadingIndicatorView
                android:id="@+id/here"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:padding="8dp"
                android:gravity="center_horizontal|center_vertical"
                android:orientation="horizontal"
                app:indicatorName="BallPulseIndicator"
                app:indicatorColor="#FF9800"/>
        </LinearLayout>

0
投票

您还可以将整个内容放入 RelativeLayout 中并设置

android:layout_centerInParent="true"

0
投票

您可以使用线性布局或相对布局,只要您方便。

使用添加以下行进行线性布局,

<LinearLayout
    android:id="@+id/linear7"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center_horizontal|center_vertical|start"
    android:orientation="vertical"
    android:layout_gravity="center_horizontal|center_vertical">
    <ImageView
        android:id="@+id/here"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:padding="8dp"
        android:src="@drawable/ic_launcher_background"
        android:gravity="center_horizontal|center_vertical|start"
        android:orientation="horizontal"/>
</LinearLayout>

对于相对布局只需添加以下代码:

<RelativeLayout
    android:id="@+id/linear7"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentEnd="true"
    android:orientation="vertical"
    android:layout_gravity="center_horizontal|center_vertical">
    <ImageView
        android:id="@+id/here"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:padding="8dp"
        android:src="@drawable/ic_launcher_background"
        android:layout_alignParentStart="true"
        android:orientation="horizontal"/>
</RelativeLayout>

谢谢


0
投票

为此,我认为最好将 RelativeLayoutlayout_centerInParent 一起使用,如下所示:

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <com.wang.avi.AVLoadingIndicatorView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_centerInParent="true"
                android:gravity="center_horizontal|center_vertical"
                android:orientation="horizontal"
                app:indicatorName="BallPulseIndicator"
                app:indicatorColor="#FF9800"/>
</RelativeLayout>

但是对于LinearLayout,我认为你的问题可以通过设置AVLoadingIndicatorView布局widthheight

"wrap_content"
或const值来解决。


0
投票

依赖不可用

 implementation 'com.wang.avi:library:2.1.3'

但是,这个 fork 正在工作,一个库已添加到 Maven 中央存储库中:

implementation 'io.github.maitrungduc1410:AVLoadingIndicatorView:2.1.4'

请参阅 AVLoadingIndicator 问题文档此处。

© www.soinside.com 2019 - 2024. All rights reserved.