我有以下的布局:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res/com.pontai"
android:id="@+id/linearLayout1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<com.markupartist.android.widget.ActionBar
android:id="@+id/actionbar"
style="@style/ActionBar"
android:layout_marginBottom="3dip"
app:textStyleActionBar="@style/TextViewStyleHeader"
app:title="@string/app_name" />
<com.fb.design.SegmentedButton
android:id="@+id/main_action_bar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:btnText1="@string/sb_friends"
app:btnText2="@string/sb_search"
app:btnText3="@string/sb_summary"
app:gradientColorOffEnd="@color/segmented_button_off_end"
app:gradientColorOffStart="@color/segmented_button_off_start"
app:gradientColorOnEnd="@color/segmented_button_on_end"
app:gradientColorOnStart="@color/segmented_button_on_start"
app:gradientColorSelectedEnd="@color/segmented_button_selected_end"
app:gradientColorSelectedStart="@color/segmented_button_selected_start"
app:whichButtonIsSelected="0" />
<View
android:layout_width="wrap_content"
android:layout_height="2dp"
android:layout_marginBottom="3dip"
android:background="@drawable/gradient_line" >
</View>
<LinearLayout
android:id="@+id/linearLayout7"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<LinearLayout
android:id="@+id/linearLayout4"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<Button
android:id="@+id/buttonAddFriends"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/ic_input_add"
android:clickable="true"
android:height="40dp"
android:width="40dp" />
<EditText
android:id="@+id/search_box"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:hint="@string/type_here_to_filter"
android:inputType="text"
android:maxLines="1"
android:padding="10dp" >
</EditText>
</LinearLayout>
<LinearLayout
android:id="@+id/loadingPanel"
style="@style/GenericProgressBackground"
android:layout_height="match_parent" >
<ProgressBar style="@style/GenericProgressIndicator" />
</LinearLayout>
<ListView
android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="1" />
<TextView
android:id="@id/android:empty"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="5dp"
android:text="@string/empty_results" />
</LinearLayout>
</LinearLayout>
我的Activity有一个AsyncTask,在完成后执行以下操作:
((LinearLayout)findViewById(R.id.loadingPanel)).setVisibility(View.GONE);
所以,我有一个LinearLayout,其中包含我的ProgressBar。当我获得所需的数据时,我将此LinearLayout的可见性设置为GONE。
这在我的Galaxy Nexus上工作良好,但在我的API 8模拟器和使用自定义ROM的Galaxy S2上无法正常工作。
有人见过这种情况吗?
最坏的情况是从XML中删除带有进度条的LinearLayout,并在代码中添加一个ProgressDialog。
问候, 菲利普
更新: 这是我如何定义styles.xml
<style name="GenericProgressBackground" parent="android:Theme">
<item name="android:layout_width">fill_parent</item>
<item name="android:layout_height">fill_parent</item>
<item name="android:background">#77ffffff</item>
<item name="android:gravity">center</item>
</style>
<style name="GenericProgressIndicator" parent="@android:style/Widget.ProgressBar.Large">
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:indeterminate">true</item>
</style>
更新2:我已经修复了这个问题。
<ProgressBar
android:id="@+id/progressBar1"
style="?android:attr/progressBarStyleLarge"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
我添加了来自Android属性的样式,这就足够了...我不知道为什么我创建的样式不能起作用...真奇怪。
感谢您的帮助! :)