Android 中心垂直&;霍利斯。表格布局中的进度条?
我有一个保存表格布局的滚动视图。当异步任务完成为我获取数据时,tablelayout将以编程方式激活。然后,方法根据返回的数据量构建TableRows,并将其附加到TableLayout 在XML中,TableLayout中唯一的项是ProgressBar。以下是XML:Android 中心垂直&;霍利斯。表格布局中的进度条?,android,xml,progress-bar,android-asynctask,tablelayout,Android,Xml,Progress Bar,Android Asynctask,Tablelayout,我有一个保存表格布局的滚动视图。当异步任务完成为我获取数据时,tablelayout将以编程方式激活。然后,方法根据返回的数据量构建TableRows,并将其附加到TableLayout 在XML中,TableLayout中唯一的项是ProgressBar。以下是XML: <?xml version="1.0" encoding="utf-8"?> <ScrollView xmlns:android="http://schemas.android.com/apk/res/and
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/electionsScrollView" android:layout_width="wrap_content"
android:layout_height="wrap_content">
<TableLayout android:id="@+id/electionsQuestionContainer"
android:layout_width="match_parent" android:layout_height="wrap_content">
<ProgressBar android:id="@+id/electionsProgressBar"
style="?android:attr/progressBarStyleLarge" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_gravity="center_vertical|center_horizontal" />
</TableLayout>
</ScrollView>
我显然不能将ProgressBar放在scrollview中,因为scrollview只能承载一个项目(tablelayout)。我认为我不想将ProgressBar放在表行中,因为我认为删除ProgressBar比只运行ProgressBar.setVisibility(View.GONE);;的AsyncTask更麻烦;。所以,TabLeRoo是我唯一的选择,或者为什么我的进度条没有在屏幕中部居中,无论是垂直还是水平? < P> >我大约有一半的路在那里。通过更改TableLayout的布局重力:
<TableLayout android:id="@+id/electionsQuestionContainer"
android:layout_width="match_parent" android:layout_height="wrap_content"
android:layout_gravity="center_vertical|center_horizontal">
但是,当我以编程方式添加行时,这会破坏外观。有人知道哪个Gravity.CONSTANT将使tableLayout返回默认值吗?当我没有为桌面布局的布局设置任何东西时,它看起来非常完美。现在,我让ProgressDialog看起来和我喜欢的一模一样,但是填充的行看起来不正确。发生了什么?顶部表格行离屏幕顶部大约一半(换句话说,我只能看到第一个表格行的一半,其余部分离屏幕顶部不远,无法滚动到)
我最终使用了两种不同的布局,并删除了旧的布局