文系出身新卒1年目、java、Android未経験者が
Androidアプリを作成していく上で参考になったものまとめですっ! (レイアウト編)
おすすめ記事があれば今後も随時更新予定です!!
<レイアウトTIPS集>
EditTextのデザイン変更
端末によってEditTextのカーソルの色が変わるので、統一したいときはxmlで指定する
Change the color of the cursor of an EditText in Android across all the sdk
RelativeLayoutにおいて50%配置をやりたい
空のビューを利用することで可能。便利。
RelativeLayout の子の View の width を 50% にする
親ビューの中にある複数のビューの状態を更新するには・・・
こういうときはfindViewWithTag()が便利。
例えば親ビューの中に10子のビューがある時に、10個分findbyしなくても
xmlでタグをつけておいてfor文回せばOK。
影をつける
API21以上を対象とするならxmlでelevationが使える。
それいがいではxmlを作成して対応する。
How would I get a ListView Item to be elevated?
[Android] アスペクト比が固定のビューを作成する
1:1とか4:3とか、横幅を基準にして高さがその何倍かを決められるカスタムビュークラス。
使い勝手最高。
px から dp へのの変換
コードでサイズ指定するときは単位が px になる。dp に直したいときは以下を参考に。
コード上で高さを数値で設定するときに、デバイス毎に高さが変わってしまう問題
ListViewで、行ごとに違うViewを使う
AdapterでgetItemViewType()をoverrideし、getView()内でcase文を使ってinflateするviewを変える
リストビュー、リストの中身にあるもの(ボタンとか、画像とか)を触る
ListViewのitem間のスペースについて
<ListView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:divider="@null"
android:dividerHeight="10dp" />
AndroidのListViewの区切り線を消す方法と要素ごとのスペースを設定する方法
リストビュー、リストの中身にあるもの(ボタンとか、画像とか)を触る
ダイアログの背景を透明にする
getDialog().getWindow().setBackgroundDrawable(new
ColorDrawable(Color.TRANSPARENT));
Can't make the custom DialogFragment transparent over the Fragment