Closed4
作業ログ 2021/03/30
Kotlinスタディ
- リサイクルビューのヘッダ対応とか
- ローディング中画像設定
リサイクルビューのヘッダ対応
Adapter (GridLayout)
-
ViewHolder
を抽象クラスで定義 -
ViewHolder
を継承したHeaderViewHolder
とItemViewHolder
を定義 - それぞれのレイアウトファイル作成
- Adapterの
getItemViewType
をオーバーライドしViewTypeを振り分け- Adapterにcompanion objectで定義しとくと良さげ
// 例
companion object{
const val VIEW_TYPE_HEADER = 0
const val VIEW_TYPE_ITEM = 1
}
-
onCreateViewHolder
でそれぞれのViewHolderを作成-
viewType
が引数で受け取れるのでそれで判定
-
- もととなる配列はヘッダ用のデータ(空データ)を先頭に追加する
- これをしないと表示時におかしな挙動になる
- 配列のsetterでヘッダ用データがなければ追加するとかやれば良さそう
ShapeableImageView
- 角丸とか丸いアイコンとか表示できる
- 思ったより簡単
-
app:shapeAppearanceOverlay
は丸いアイコンなら下記スタイルを当てれば行ける
<style name="roundedImageViewRounded">
<item name="cornerFamily">rounded</item>
<item name="cornerSize">50%</item>
</style>
このスクラップは2021/03/31にクローズされました