LoginSignup
8
1

More than 1 year has passed since last update.

Text Editの内側に影をつける方法〜Layer-List〜

Last updated at Posted at 2022-10-05

Androidアプリの実装中にTextEditの領域の 内側 に影をつけたかった!
うまい実装方法に辿り着いたので備忘録としてここに残します。

elevationを試してみるが、うまくいかず・・・

入力欄の外側に影をつけるなら、XMLの中に android:elevation="〇〇dp" を記述することで描画できる。

次にgradient(グラデーション要素)を試したがこちらもうまくいかなかった

style要素としてgradientを使用して実装しようと思ったが、うまくいかず。(style…高さや幅、背景の色、文字についてなど外観についてまとめて記述できる要素。Viewファイルとは別に用意)
backgroundcolorで指定した白背景の上に、gradientでグラデーションをかける、という複数の要素を重ねて表示することができず断念。

layer-list で解決した!

layer-list とは

画像などを、レイヤー構成で重ねることができるリソース。
複数の画像をひとつのリソースとして取り扱うことができる。
res/drawable内に作成。

●使い方
XML で作る場合は layer-listタグを使う。
そのタグの中に itemタグで要素を構成する。
上に書いた順に描画されるので、一番上の itemタグで定義した画像が一番下に表示される。

実際に書いたコード↓
スクリーンショット_2022-05-25_16_47_14.png

実際の画面
見辛いですが、内側にうっすら影がついています。
スクリーンショット_2022-05-25_16_24_17.jpg

影をつけたい部分の違いでさまざまな方法があるんですね。

参考記事
Android Developer
How to make inner shadow shape in android studio [closed]

8
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
1