![【Android Studio&Kotlin】枠線の角を丸める・枠線を太くする・枠線の色を変える方法](https://cross-accelerate-business-create.com/wp-content/uploads/2021/04/f95cd5b840d5c21271918ceb14aec56d.png)
こんにちは。YOSHITAKA(@YOSHITA19704216)です。
![](https://cross-accelerate-business-create.com/wp-content/uploads/2019/03/pose_kyosyu_figure.png)
![](https://cross-accelerate-business-create.com/wp-content/uploads/2019/03/IMG_E1151-2.jpg)
- Kotlinで枠線の角を丸める・枠線を太くする・枠線の色を変える方法でわかります。
Contents
Kotlinで枠線の角を丸める・枠線を太くする・枠線の色を変える方法
対象者
- xmlファイルの追加方法を理解している。
基本的な流れ
TextViewやButtonに角丸や枠線を付けたい時の基本的な流れは以下の2点です。
- drawableディレクトリ直下にxmlファイルの作成
- レイアウトファイルのbackGroundにxmlファイルを指定
viewの外周に枠線を描きたい場合
.xmlで枠線を描画してそれをViewのstateでbackGroundに指定します。
drawableディレクトリ直下にxmlファイルを作成
xmlファイルは自分でお好きな名前を指定して作成して下さい。
基本的な枠線の指定はこんな感じになります。
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<stroke android:width="5dp"
android:color="@color/COLOR_RED"/>
</shape>
- androidLayout用の定義であることを明確にする識別子です。
ルート要素には必ず指定する必要があります。
xmlns:android=”http://schemas.android.com/apk/res/android”
2行目は線の状態を定義していきます。
ここの種類が多いので下によく使う状態を書いておきます。
xmlファイルで丸みを指定
android:shape="rectangle">
は長方形を指定しています。
今回はこの部分については詳細は割愛します。
重要なのは・・・・・
<!-- 角の丸み -->
<corners android:radius="6dp" />
サンプルは次のようにしておきます。
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<!-- 背景色 -->
<solid android:color="#ffffff" />
<!-- 角の丸み -->
<corners android:radius="6dp" />
<!-- 枠線 width:線の幅、color:線の色 -->
<stroke
android:width="2dp"
android:color="#00b489" />
</shape>
Shapeタグの中に情報を含むことができるので以下を入れてみました。
- 背景色
<solid
→color.xmlと併用することをおすすめします。 - 角の丸み
<corners
→topLeftRadius/topRightRadius/bottomLeftRadius/bottomRightRadius/radiusで指定できます。 - 線の幅・線の色
<stroke
せっかくなので他の指定方法も掲載しておきます。
Shapeタグの中に情報を含むことができる情報
- 空白
padding
→top,bottom,left,rightそれぞれ指定する必要があります。
- xmlの大きさ
<size
→高さと幅を指定「width・height」
まとめ
今回はKotlinで枠線の角を丸める・枠線を太くする・枠線の色を変える方法についてお伝えしました。
※プログラミングは習得中ですので、参考程度に記事を読んでください。
参考はこちら
https://qiita.com/yukiyamadajp/items/15fc68dc88b57734149b