Как разместить объект ProgressBar внутри элемента управления ListView?
У меня есть ListView, который заполняется в AsyncTask. Во время выполнения ListView становится невидимым, панель прогресса отображается в центре горизонтали, которая исчезает после завершения AsyncTask, и ListView отображается снова. Теперь это выглядит так:
Но мне нужно, чтобы ProgressBar отображался внутри ListView и центрировался как по горизонтали, так и по вертикали:
Вот моя разметка макета:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1">
<LinearLayout
android:id="@+id/LinearHeaderProgress"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center"
android:orientation="vertical"
android:visibility="gone">
<ProgressBar
android:id="@+id/HeaderProgress"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</ProgressBar>
</LinearLayout>
<ListView
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:id="@+id/listView"/>
</LinearLayout>
Как я могу достичь вот это?
Спасибо.
1 ответ:
Попробуйте использовать RelativeLayout вот так,
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="1" android:orientation="vertical" > <ProgressBar android:id="@+id/HeaderProgress" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" > </ProgressBar> <ListView android:id="@+id/listView" android:layout_width="match_parent" android:layout_height="match_parent" /> </RelativeLayout>