ProgressBar indeterminateDrawable

5031 ワード

drawable.xml
<?xml version="1.0" encoding="utf-8"?>
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
    android:fromDegrees="0.0"
    android:pivotX="50.0%"
    android:pivotY="50.0%"
    android:toDegrees="360.0" >
    <shape
        android:innerRadiusRatio="3.0"
        android:shape="ring"
        android:thicknessRatio="8.0"
        android:useLevel="false" >
        <gradient
            android:centerColor="#ffffb0cc"
            android:centerY="0.5"
            android:endColor="#ffffffff"
            android:startColor="#ffff6699"
            android:type="sweep"
            android:useLevel="false" />
    </shape>
</rotate>

main.xml
  <ProgressBar
        android:id="@+id/progressbar"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:focusable="false"
        android:indeterminateDrawable="@drawable/myprogressdrawable" />

android:shape
シェイプのタイプを定義するキーアトリビュートです.有効な値は次のとおりです.

説明
rectangle
ビューオブジェクトに長方形を入力します.これは既定のシェイプです.
oval
ビューオブジェクトのサイズに合った楕円形.
line
ビューオブジェクトの幅を通る水平線.この形状は要素で線の幅を定義する必要があります.
ring
円環
次のプロパティはandroid:shape="ring"の場合にのみ使用されます.
     android:innerRadiux
[寸法値](Dimension Value)円環の内側の半径(中央の円穴の半径)を寸法値または寸法アセットで指定します.
     android:innerRadiusRatio
内部リングの半径を円環幅の比率で表す浮動小数点値.たとえば、android:innerRadiusRatio="5"の場合、内部半径は円環の幅を5で割ったものに等しい.この値はandroid:innerRadiusの値で上書きされます.デフォルトは9です.
     android:thickness
円環の厚さを定義する寸法値または寸法アセットを使用します.
     android:thicknessRatio
浮動小数点円環の厚さを円環の幅の比率で表します.たとえばandroid:thicknessRatio="2"の場合、厚さは円環の幅を2で割ったものに等しい.この値はandroid:innerRadiusで上書きされます.既定値は3です.
     android:useLevel
ブール値、このシェイプがLevelListDrawableオブジェクトに使用される場合はtrueに設定されます.通常はfalseに設定するか、シェイプを非表示にします.

長方形にのみ適用されるフィレットをジオメトリに作成します.
プロパティ(ATTRIBUTES):
      android:radius
寸法値は、寸法値または寸法リソース(dimension resource)ですべてのフィレットの半径を定義します.次のアトリビュートで定義された各角の値で上書きされます.
      android:topLeftRadius
左上隅のフィレット半径を寸法値または寸法アセットで定義する寸法値.
      android:topRightRadius
右上隅のフィレット半径を寸法値または寸法アセットで定義する寸法値.
      android:bottomLeftRadius
左下隅のフィレット半径を寸法値または寸法アセットで定義する寸法値.
      android:bottomRightRadius
右下隅のフィレット半径を寸法値または寸法アセットで定義する寸法値.
注意:最初は各コーナーに1より大きいフィレット半径を指定する必要があります.そうしないと、コーナーは丸くなりません.角に円弧を持たないようにするには、android:radiusプロパティを使用してデフォルトの1より大きいフィレット半径を設定し、円弧が欲しくない角に対して0 dpのプロパティを設定します.これにより、この角に円弧はありません.

ジオメトリのグラデーションを指定します.
プロパティ(ATTRIBUTES):
       android:angle
整数値、度単位でグラデーションの角度を指定します.左から0度、下から上へ90度です.45の倍数でなければなりません.デフォルトは0です.
       android:centerX
ランプ中心のX点の相対位置を指定する浮動小数点数(0-1.0)
       android:centerY
ランプ中心のY点の相対位置を指定する浮動小数点数(0-1.0)
       android:centerColor
色の値.開始カラーと終了カラーの間のオプションカラーを指定し、16進数のカラー値またはカラーリソースで表します.
       android:endColor
色の値.グラデーションの終了時の色を指定し、16進数の色値または色リソースで表します.
       android:gradientRadius
この設定は、android:type="radial"の場合にのみ使用されるグラデーションの半径を指定する浮動小数点値です.
       android:startColor
グラデーションの開始時のカラーを指定するカラー値.16進数のカラー値またはカラーアセットで表されます.
       android:type 
使用するグラデーション・モードのタイプを指定するキー設定です.次の表は有効です.

説明
linear
既定値のリニアランプ
radial
放射性グラデーションは、開始色を中心にしています.
sweep
走査線式のグラデーション.
       android:useLevel
ブール値、LevelListDrawableオブジェクトを使用する場合はtrueに設定します.

シェイプを含むView要素に適した余白を定義します(この余白はシェイプの位置ではなくViewオブジェクトのコンテンツの位置です).
プロパティ(ATTRIBUTES):
        android:left
寸法値(寸法値)は、寸法値または寸法アセットで左側の距離を定義します.
        android:top
寸法値.寸法値または寸法アセットで上マージンを定義します.
        android:right
寸法値(寸法値)は、寸法値または寸法アセットで右側の距離を定義します.
        android:bottom
寸法値(寸法値)は、寸法値または寸法アセットで下マージンを定義します.
 
ジオメトリのサイズを定義します.
プロパティ(ATTRIBUTES):
        android:height
寸法値.寸法値または寸法アセットでジオメトリの高さを定義します.
       android:width
寸法値.寸法値または寸法アセットでジオメトリの幅を定義します.
注記:既定では、ジオメトリ定義の寸法は、そのコンテナに適した寸法にスケールされます.ImageViewオブジェクトでジオメトリを使用する場合、android:scaleTypeプロパティをcenterに設定することでスケールを制限できます.

塗りつぶしジオメトリのソリッドカラーを定義します.
プロパティ(ATTRIBUTES):
        android:color
色の値.ジオメトリに適用する色の値を指定します.16進数のカラー値またはカラーリソースで表されます.

シェイプに破線を定義します.
プロパティ(ATTRIBUTES):
        android:width
寸法値.線の厚さを指定し、寸法値または寸法リソースで表します.
        android:color
色の値.線の色を指定し、16進数の色値または色リソースで表します.
        android:dashGap
寸法値は、破線間の距離を定義し、寸法値または寸法リソースで表されます.この属性はandroid:dashWidth属性が設定されている場合にのみ有効です.
        android:dashWidth
寸法値は、各破線の寸法を定義し、寸法値または寸法リソースで表されます.この属性はandroid:dashGap属性が設定されている場合にのみ有効です.