2011.
07.
31
16:44:56
レイアウト用のXMLのお話です。
まず最初に「スクロールエリアってどこよ?」なあなた。
小難しく言うと「スクロールバー用描画領域」です。
要はスクロールバーの棒がぐりぐり動ける範囲。
スクロールバーの棒の部分はスクロール棒・・ではなく
スクロールボックスと呼ぶそうです。
イメージとしては線路がスクロールエリア、電車がスクロールボックス
二つ合わせてスクロールバーってなところですかね。
ほんでスクロールエリアの色を変えるのはこんな感じφ(--)
念の為に言っておきますがスクロールバーの色を変えるのと殆ど同じです。
1.スクロールエリアのレイアウト用XMLファイルを用意する
私は試しに「res/drawable/scroll_track_back.xml」で用意しました。
中身はこんな感じφ(--)
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<gradient android:startColor="#0000FF"
android:endColor="#FFFFFF"
android:angle="0" />
<corners
android:radius="20dp" />
</shape>
「<shape>~</shape>」ってのは背景とか形とかを定義する奴と思いねぇ。
「<gradient>~</gradient>」は文字通りグラデーションの設定。
「startColor」が始まりの色で「endColor」が終わりの色。
「angle」ってのは角度。0度だと左から右、90度で下から上です。
「<corners android:radius="20dp" />」は角の丸み。
2.「1.」で作成したスタイルを割り当てる。(横スクロールバーの場合)
横スクロールバーは「android:scrollbarTrackHorizontal」で設定します。
こんな感じφ(--)
<HorizontalScrollView
android:id="@+id/horizontalScrollView1"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:fadeScrollbars="false"
android:android:scrollbarThumbHorizontal="@drawable/scroll_back"
android:android:scrollbarTrackHorizontal="@drawable/scroll_track_back"
>
<LinearLayout android:id="@+id/linearLayout2"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
~うんちゃらかんちゃら~
</LinearLayout>
</HorizontalScrollView>
3.「1.」で作成したスタイルを割り当てる。(縦スクロールバーの場合)
縦スクロールバーは「android:scrollbarTrackVertical」で設定します。
こんな感じφ(--)
<HorizontalScrollView
android:id="@+id/scrollView1"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:fadeScrollbars="false"
android:scrollbarThumbVertical="@drawable/scroll_back"
android:scrollbarTrackVertical="@drawable/scroll_track_back"
>
<LinearLayout android:id="@+id/linearLayout2"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
~うんちゃらかんちゃら~
</LinearLayout>
</HorizontalScrollView>
要はスタイルを用意して割り当てるってことですね。
まず最初に「スクロールエリアってどこよ?」なあなた。
小難しく言うと「スクロールバー用描画領域」です。
要はスクロールバーの棒がぐりぐり動ける範囲。
スクロールバーの棒の部分はスクロール棒・・ではなく
スクロールボックスと呼ぶそうです。
イメージとしては線路がスクロールエリア、電車がスクロールボックス
二つ合わせてスクロールバーってなところですかね。
ほんでスクロールエリアの色を変えるのはこんな感じφ(--)
念の為に言っておきますがスクロールバーの色を変えるのと殆ど同じです。
1.スクロールエリアのレイアウト用XMLファイルを用意する
私は試しに「res/drawable/scroll_track_back.xml」で用意しました。
中身はこんな感じφ(--)
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<gradient android:startColor="#0000FF"
android:endColor="#FFFFFF"
android:angle="0" />
<corners
android:radius="20dp" />
</shape>
「<shape>~</shape>」ってのは背景とか形とかを定義する奴と思いねぇ。
「<gradient>~</gradient>」は文字通りグラデーションの設定。
「startColor」が始まりの色で「endColor」が終わりの色。
「angle」ってのは角度。0度だと左から右、90度で下から上です。
「<corners android:radius="20dp" />」は角の丸み。
2.「1.」で作成したスタイルを割り当てる。(横スクロールバーの場合)
横スクロールバーは「android:scrollbarTrackHorizontal」で設定します。
こんな感じφ(--)
<HorizontalScrollView
android:id="@+id/horizontalScrollView1"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:fadeScrollbars="false"
android:android:scrollbarThumbHorizontal="@drawable/scroll_back"
android:android:scrollbarTrackHorizontal="@drawable/scroll_track_back"
>
<LinearLayout android:id="@+id/linearLayout2"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
~うんちゃらかんちゃら~
</LinearLayout>
</HorizontalScrollView>
3.「1.」で作成したスタイルを割り当てる。(縦スクロールバーの場合)
縦スクロールバーは「android:scrollbarTrackVertical」で設定します。
こんな感じφ(--)
<HorizontalScrollView
android:id="@+id/scrollView1"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:fadeScrollbars="false"
android:scrollbarThumbVertical="@drawable/scroll_back"
android:scrollbarTrackVertical="@drawable/scroll_track_back"
>
<LinearLayout android:id="@+id/linearLayout2"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
~うんちゃらかんちゃら~
</LinearLayout>
</HorizontalScrollView>
要はスタイルを用意して割り当てるってことですね。