Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 安卓:布局';I don’我并不总是像预期的那样工作_Android - Fatal编程技术网

Android 安卓:布局';I don’我并不总是像预期的那样工作

Android 安卓:布局';I don’我并不总是像预期的那样工作,android,Android,此布局: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="#ffffff" android:orientation="ver

此布局:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#ffffff"
android:orientation="vertical" >

<TextView
    android:id="@+id/main_tv"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center_horizontal"
    android:keepScreenOn="true"
    android:text="@string/hello"
    android:textAppearance="@android:style/TextAppearance.Large"
    android:textColor="#0000ff" />

<ProgressBar
    android:id="@+id/main_progressBar"
    style="?android:attr/progressBarStyleHorizontal"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_gravity="center_vertical" />

</LinearLayout>

textView水平居中,但为什么ProgressBar不垂直居中

另外,我知道我可以使用相对布局来实现这一点。但我不明白为什么它不能用线性? ps2。为什么要投反对票,这是一个完全合法的问题?


<ProgressBar
    android:id="@+id/main_progressBar"
    style="?android:attr/progressBarStyleHorizontal"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center_vertical" />
试试上面的一个


<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#ffffff"
android:orientation="vertical" >

<TextView
    android:id="@+id/main_tv"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true"
    android:layout_gravity="center_horizontal"
    android:keepScreenOn="true"
    android:text="@string/hello"
    android:textAppearance="@android:style/TextAppearance.Large"
    android:textColor="#0000ff" />

<ProgressBar
    android:id="@+id/main_progressBar"
    style="?android:attr/progressBarStyleHorizontal"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_centerVertical="true" />

</RelativeLayout>

首先,我意识到这是一个非常古老的问题,但也许有人会发现这一点很有帮助

我不完全确定为什么你的例子不起作用,如果你现在这样做了,一定要让我知道。我知道如果您为progressbar添加一个额外的线性布局,它会起作用。 像这样:



因为它有android:layout\u width=“fill\u parent”试着给它一个不同的value@Thepoosh它的宽度设置为“填充父项”,但高度不重要。@gtumca MAC这并没有给我答案。我知道我可以用relative做这个,但我更感兴趣的是为什么它不能用Linear。想用Linear布局做吗
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#ffffff"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/main_tv"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:keepScreenOn="true"
        android:text="@string/hello"
        android:textAppearance="@android:style/TextAppearance.Large"
        android:textColor="#0000ff" />
    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent">
        <ProgressBar
            android:id="@+id/main_progressBar"
            style="?android:attr/progressBarStyleHorizontal"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical" />
    </LinearLayout>

</LinearLayout>