6

非常に奇妙な問題があります-プログレスバーのカスタムプログレスドローアブルを定義し、

表示される場合と表示されない場合があります。

プロジェクトをクリーンアップし、eclipseを再起動し、さらにはコンピューターを再起動してみました。

それはまだ起こります。

進行状況の描画可能なxmlは次のとおりです。

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">

<item android:id="@android:id/background">
<shape
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">

    <corners android:radius="5dp" />
    <gradient
        android:startColor="#6f7754"
        android:endColor="#858762"
        android:angle="90"/>
</shape>
</item>

<item android:id="@android:id/secondaryProgress">
<clip>
    <shape 
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:shape="rectangle">

        <corners android:radius="5dp" />
        <gradient
                android:startColor="#ffba00"
                android:endColor="#af6c03"
                android:angle="90"/>
    </shape>
</clip>
</item>

<item android:id="@android:id/progress">
<clip>
    <shape 
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:shape="rectangle">

        <corners
            android:radius="5dp" />
        <gradient
            android:startColor="#ffba00"
            android:endColor="#af6c03"
            android:angle="90" />
    </shape>
</clip>

これが私が使用するxmlです:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:layout_marginBottom="2dp"
android:background="@drawable/quick_action_item_btn">

<ImageView
    android:id="@+id/icon" 
    android:layout_width="21dp" 
    android:layout_height="21dp"
    android:scaleType="centerInside"/>

<ProgressBar 
    android:id="@+id/progress"
    android:layout_width="20dp"
    android:layout_height="4dp"
    android:layout_marginTop="2dp"
    style="@android:style/Widget.ProgressBar.Horizontal"
    android:progressDrawable="@drawable/achievement_progress_bar"/>

</LinearLayout>
4

3 に答える 3

8

これで試してください

android:indeterminateDrawable="@drawable/yourXML"

それは私のために働いています..

于 2012-11-08T11:56:37.513 に答える
1

私にとってはうまくいきます。indeterminateDrawable をカスタム xml ファイルに設定するだけです。

于 2012-11-12T05:13:14.573 に答える
0

おそらく、これはこれと同様の問題です... SharedPreferences.onSharedPreferenceChangeListenerが一貫して呼び出されない

カスタム xml はアクティビティの変数として定義されていますか? そうでない場合は、ガベージ コレクターによって収集されている可能性があります。私の提案は、クラス (アクティビティ クラス) のフィールド変数にすることです。

于 2012-11-04T12:26:54.093 に答える