AndroidのSeekBar
5384 ワード
SeekBarを使用する場合、よくある質問は次のとおりです.
1.seekbarのドラッグボタンが中央にありません.
2.seekbarの高さに問題があります.
3.seekbarのドラッグボタンが一番左、一番右に不完全に表示されます.
まず、上記の問題を解決するには、seekbarを記述する際にlayoutファイルが画像のサイズを正しく設定しているかどうか、画面密度と画像が対応するdrawableフォルダに配置されているかどうかを確認する(drawable-hdpi,drawable-mdpi,drawable-ldpi).
画像リソースが正しいことを確認する場合は、以下のXMLを参照してください.
layout
seekbar_style
seekbarのいくつかの重要な属性を簡単に説明します.
android:layout_height="wrap_content"
//wrap_の使用を推奨content、さもなくば必ず設定の値がseekbarピクチャリソースの中の最高値より小さくないことを保証します
android:maxHeight="12px"android:minHeight="12px"
//進捗バーの最低高さと最大高さを説明し、高さの問題を解決します.
android:paddingLeft="18px"android:paddingRight="18px"
//ドラッグボタンが一番左と一番右に不完全に表示される問題を解決します.paddingの値は一般的にthumbの半分の幅です.
android:progressDrawable="@drawable/seekbar_style"
//この値を設定すると、カスタムの進捗バースタイルを使用して、進捗バー背景図、進捗バー図、バッファバー図を設定できます.
android:thumb="@drawable/drag_ball"//seekbarのドラッグボタン画像
Androidシステムに付属するカスタムスタイルの例:
seekbar_style
thumb
1.seekbarのドラッグボタンが中央にありません.
2.seekbarの高さに問題があります.
3.seekbarのドラッグボタンが一番左、一番右に不完全に表示されます.
まず、上記の問題を解決するには、seekbarを記述する際にlayoutファイルが画像のサイズを正しく設定しているかどうか、画面密度と画像が対応するdrawableフォルダに配置されているかどうかを確認する(drawable-hdpi,drawable-mdpi,drawable-ldpi).
画像リソースが正しいことを確認する場合は、以下のXMLを参照してください.
layout
<SeekBar
android:layout_width="321px"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:maxHeight="12px"
android:minHeight="12px"
android:paddingLeft="18px"
android:paddingRight="18px"
android:max="100"
android:progressDrawable="@drawable/seekbar_style"
android:thumb="@drawable/drag_ball"
android:id="@+id/seekBar"/>
seekbar_style
<layer-list
xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@android:id/background"
android:drawable="@drawable/drag_bar_background"/>
<item
android:id="@android:id/progress"
android:drawable="@drawable/drag_bar_foreground"/>
<item
android:id="@android:id/secondaryProgress"
android:drawable="@drawable/drag_bar_foreground"/>
</layer-list>
seekbarのいくつかの重要な属性を簡単に説明します.
android:layout_height="wrap_content"
//wrap_の使用を推奨content、さもなくば必ず設定の値がseekbarピクチャリソースの中の最高値より小さくないことを保証します
android:maxHeight="12px"android:minHeight="12px"
//進捗バーの最低高さと最大高さを説明し、高さの問題を解決します.
android:paddingLeft="18px"android:paddingRight="18px"
//ドラッグボタンが一番左と一番右に不完全に表示される問題を解決します.paddingの値は一般的にthumbの半分の幅です.
android:progressDrawable="@drawable/seekbar_style"
//この値を設定すると、カスタムの進捗バースタイルを使用して、進捗バー背景図、進捗バー図、バッファバー図を設定できます.
android:thumb="@drawable/drag_ball"//seekbarのドラッグボタン画像
Androidシステムに付属するカスタムスタイルの例:
seekbar_style
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/background">
<shape>
<corners android:radius="5dip" />
<gradient
android:startColor="#ff9d9e9d"
android:centerColor="#ff5a5d5a"
android:centerY="0.75"
android:endColor="#ff747674"
android:angle="270"/>
</shape>
</item>
<item android:id="@android:id/secondaryProgress">
<clip>
<shape>
<corners android:radius="5dip" />
<gradient
android:startColor="#80ffd300"
android:centerColor="#80ffb600"
android:centerY="0.75"
android:endColor="#a0ffcb00"
android:angle="270"/>
</shape>
</clip>
</item>
<item android:id="@android:id/progress">
<clip>
<shape>
<corners android:radius="5dip" />
<gradient
android:startColor="#ff0099CC"
android:centerColor="#ff3399CC"
android:centerY="0.75"
android:endColor="#ff6699CC"
android:angle="270"/>
</shape>
</clip>
</item>
</layer-list>
thumb
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- -->
<item
android:state_focused="true"
android:state_pressed="true"
android:drawable="@drawable/thumb_pressed" />
<!-- -->
<item
android:state_focused="false"
android:state_pressed="false"
android:drawable="@drawable/thumb_normal" />
<!-- -->
<item
android:state_focused="true"
android:state_pressed="false"
android:drawable="@drawable/thumb_focused" />
<!-- -->
<item
android:state_focused="true"
android:drawable="@drawable/thumb_focused" />
</selector>