2013-09-23 26 views
5

今日私は自分のカスタムプログレスバーを作ろうとしています。それは私がspinner_innerとspinner_outerを作りましたが、私の内部サイズは大きくて外側に重なっています。画像が中央にあるプログレスバー

Image

私の活動

<ProgressBar 
     style="@style/Spinner" 
     android:layout_width="100dp" 
     android:layout_height="100dp" 
     android:indeterminateDrawable="@drawable/loading" /> 

    <TextView 
     android:id="@+id/login_status_message" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginBottom="16dp" 
     android:fontFamily="sans-serif-light" 
     android:text="@string/login_progress_signing_in" 
     android:textAppearance="?android:attr/textAppearanceMedium" /> 
</LinearLayout> 

自分のスタイル

<style name="Spinner"> 
    <item name="android:indeterminate">true</item> 
    <item name="android:indeterminateDrawable">@drawable/spinner_outer</item> 
    <item name="android:indeterminateDuration">2000</item> 
    <item name="android:indeterminateOnly">true</item> 
</style> 

私のxml

<?xml version="1.0" encoding="utf-8"?> 

<item android:drawable="@drawable/spinner_inner"/> 
<item> 
    <rotate 
     android:fromDegrees="0" 
     android:interpolator="@android:anim/linear_interpolator" 
     android:pivotX="50%" 
     android:pivotY="50%" 
     android:toDegrees="360" > 
     <bitmap 
      android:antialias="true" 
      android:filter="true" 
      android:src="@drawable/spinner_outer" /> 
    </rotate> 
</item> 

誰も私に答えなかった後、私はすでに私は自分の道を見つけるので、答えを探しますがありません成功事例の

+0

誰もいない!バンプする – firetrap

答えて

10

ていました。

レイアウト:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:id="@+id/loading_status" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:layout_gravity="center" 
android:gravity="center_horizontal" 
android:orientation="vertical" 
android:visibility="gone" > 

<RelativeLayout 
    android:id="@+id/relative_container" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" > 

    <ImageView 
     android:id="@+id/image_test" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:adjustViewBounds="true" 
     android:src="@drawable/spinner_inner" 
     android:layout_centerInParent="true" /> 

    <ProgressBar 
     android:id="@+id/progress" 
     style="?android:attr/progressBarStyleLarge" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_centerInParent="true" 
     android:indeterminateDrawable="@drawable/loading" 
     android:visibility="visible" /> 
</RelativeLayout> 

<TextView 
    android:id="@+id/status_message" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_marginBottom="16dp" 
    android:fontFamily="sans-serif-light" 
    android:text="@string/loading_data" 
    android:textAppearance="?android:attr/textAppearanceMedium" /> 

アウトスピナー

<?xml version="1.0" encoding="utf-8"?> 

<item> 
    <rotate 
     android:fromDegrees="0" 
     android:interpolator="@android:anim/linear_interpolator" 
     android:pivotX="50%" 
     android:pivotY="50%" 
     android:toDegrees="360" > 
     <bitmap 
      android:antialias="true" 
      android:filter="true" 
      android:src="@drawable/spinner_outer" /> 
    </rotate> 
</item> 

+1

あなたは命を救っています。私はこれを必要とし、それは私がテストしたいくつかのデバイスで完全に動作します。本当にありがとう! – pqsk

+0

@ drawable/spinner_inner、@ drawable/spinner_outer "、@ drawable/loadingとは何ですか? – CoronaPintu