初めに
今回は、shapeタグの紹介記事第三弾になります
3個目はViewに一気対してこだわりを持たせられるgradient
です。
本文
こちらは名前の通りグラデーションをつけることができ、色はstartColor
、centerColor
、endColor
の三種類を指定することがきます。
・startColor
はスタート位置の色
・centerColor
は中間地点の色
・endColor
は最終地点の色を指定することができます。
色以外の要素となると
・type
・gradientRadius
・centerX
・centerY
・angle
の5点があります
type
とはグラデーションの形を指定することができ、
・linear
・radial
・sweep
の3種類があり、radial
は放射状に、sweep
は円形にグラデーションをかけることができ、type
を指定しない場合はlinear
になり直線状のグラデーションがかかります。
gradientRadius
はradial
を使用してる時に半径を指定することができます。
centerX
とcenterY
は0~1の間でグラデーションの場所を指定することができるので、放射状にグラデーションを表示している時などに便利です。
最後にangle
です。
gradient
はデフォルトだと左から右にグラデーションをかけるのでangle
に0~360を指定することで方向を変更することができます。
各形状のサンプルコードと画像を置いておきます。
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:angle="90"
android:centerColor="@color/white"
android:endColor="@android:color/transparent"
android:type="linear"
android:startColor="@color/white" />
</shape>
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:centerColor="@color/black"
android:endColor="@android:color/white"
android:type="radial"
android:centerX="0.5"
android:centerY="0.5"
android:gradientRadius="200dp"
android:startColor="@color/white" />
</shape>
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:centerColor="@color/black"
android:endColor="@android:color/darker_gray"
android:type="sweep"
android:startColor="@color/white" />
</shape>
最後に
Shapeタグを紹介していくシリーズは今回が最後になります。
自由度が高く、簡単に少しだけこだわりを持たせたり、見た目のグレードアップにつながるものなので皆さんもぜひ活用してみてください。
前回の記事はこちら:https://qiita.com/ryuji_sato/items/b2f1f716e686d26bc849