自定义不确定进度视图的奇怪行为 - ProgressDialog

时间:2014-06-05 09:02:21

标签: android progressdialog android-custom-view

我尝试使用带有多个图片的animation_list创建一个自定义进度条和自定义不确定视图..我已经让它工作了但它做了一些奇怪的部分图像是像这样重复.. enter image description here enter image description here

以下是代码:

Dialog dialog = new Dialog(getActivity(), R.style.CustomProgressDialog);
    View customView = ((LayoutInflater) getActivity().getSystemService(Context.LAYOUT_INFLATER_SERVICE))
            .inflate(R.layout.custom_loader_layout, null, false);
    dialog.setContentView(customView);
    dialog.setCancelable(false);
    dialog.setCanceledOnTouchOutside(false);

这是布局

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="match_parent"
android:background="@android:color/transparent"
android:gravity="center"
android:orientation="vertical" >

<ProgressBar
    android:id="@+id/imgProgreso"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_margin="5dip"
    android:background="@android:color/transparent"
    android:indeterminateDrawable="@drawable/loader_drawable" />

<TextView
    android:id="@+id/txtmensajedialogprogress"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_gravity="center_horizontal|center_vertical"
    android:background="@android:color/transparent"
    android:gravity="center_vertical|center_horizontal"
    android:text="Wait ..."
    android:textColor="@android:color/black"
    android:textSize="15dp"
    android:textStyle="normal" />

这是自定义样式

<style name="CustomProgressDialog" parent="@android:Theme.Dialog" >
    <item name="android:windowFrame">@null</item>
    <item name="android:windowBackground">@android:color/transparent</item>
    <item name="android:windowIsTranslucent">true</item>
    <item name="android:windowIsFloating">true</item>
    <item name="android:windowContentOverlay">@null</item>
    <item name="android:windowTitleStyle">@null</item>
    <item name="android:windowAnimationStyle">@android:style/Animation.Dialog</item>
    <item name="android:windowSoftInputMode">stateUnspecified|adjustPan</item>
    <item name="android:backgroundDimEnabled">true</item>
    <item name="android:background">@android:color/transparent</item>
</style>

注意:当我使用自定义样式使背景透明时,似乎值得一提这个问题

任何帮助都会非常感激:)

1 个答案:

答案 0 :(得分:0)

答案是使用ImageView代替自定义布局资源,同时为animation-list设置背景,因为某些原因导致animation-list的背景搞砸了。

它就是这样......

Dialog dialog = new Dialog(getActivity(), R.style.CustomProgressDialog);
    ImageView customView = new ImageView(getActivity());
    customView.setBackgroundResource(R.drawable.bg_loader);
    customView.setImageDrawable(getResources().getDrawable(R.drawable.custom_loader));

R.drawable.custom_loaderanimation-list