2021/07/17
Android の Stroke を特定の辺だけにする
【Android】特定の辺だけにstrokeをつけたい にあるように、特定の辺の stroke を実現するにはコードでの実装が必要という認識だったのですが、最近になって InsetDrawable が XML で使用できることを知って1、これを使えば XML だけで stroke を消せるのではないかと思い、やってみました。
1 2 3 4 5 6 7 8 9 10 11 12 | <? xml version = "1.0" encoding = "utf-8" ?> < shape > < stroke android:width = "5dp" android:color = "#FF0000" /> < solid android:color = "#DDDDDD" /> < corners android:topLeftRadius = "15dp" android:topRightRadius = "15dp" /> </ shape > </ inset > |
Bottom だけ消してみたら以下のような感じになりました。
注意点としては、inset に入れる値が stroke
の width
と全く同じだと、場合によっては表示されてしまう場合があること2。少し大きめの値を指定しましょう。
その気になって探してみると、既に情報は出ていました。
0 件のコメント:
コメントを投稿