2021-06-28 09:09:00 +02:00
|
|
|
package jp.juggler.subwaytooter.actmain
|
2018-01-04 19:52:25 +01:00
|
|
|
|
|
|
|
import android.view.ViewGroup
|
2019-10-05 14:28:04 +02:00
|
|
|
import androidx.recyclerview.widget.RecyclerView
|
2021-06-28 09:09:00 +02:00
|
|
|
import jp.juggler.subwaytooter.ActMain
|
2021-06-28 14:52:26 +02:00
|
|
|
import jp.juggler.subwaytooter.columnviewholder.TabletColumnViewHolder
|
2018-01-04 19:52:25 +01:00
|
|
|
|
2018-01-13 16:24:51 +01:00
|
|
|
internal class TabletColumnPagerAdapter(
|
2021-06-20 15:12:25 +02:00
|
|
|
private val activity: ActMain,
|
2019-10-05 14:28:04 +02:00
|
|
|
) : RecyclerView.Adapter<TabletColumnViewHolder>() {
|
2020-12-21 03:13:03 +01:00
|
|
|
|
2021-06-20 15:12:25 +02:00
|
|
|
var columnWidth: Int = 0 // dividerの幅を含まない
|
|
|
|
|
|
|
|
private val appState = activity.appState
|
|
|
|
|
|
|
|
override fun getItemCount(): Int = appState.columnCount
|
|
|
|
|
|
|
|
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): TabletColumnViewHolder =
|
|
|
|
TabletColumnViewHolder(activity, parent)
|
|
|
|
|
|
|
|
override fun onBindViewHolder(holder: TabletColumnViewHolder, position: Int) {
|
|
|
|
val columnWidth = this.columnWidth
|
|
|
|
if (columnWidth > 0) {
|
|
|
|
val lp = holder.itemView.layoutParams
|
|
|
|
lp.width = columnWidth
|
|
|
|
holder.itemView.layoutParams = lp
|
|
|
|
}
|
|
|
|
|
|
|
|
holder.bind(appState.column(position)!!, position, appState.columnCount)
|
|
|
|
}
|
|
|
|
|
|
|
|
override fun onViewRecycled(holder: TabletColumnViewHolder) {
|
|
|
|
super.onViewRecycled(holder)
|
|
|
|
holder.onViewRecycled()
|
|
|
|
}
|
2018-01-04 19:52:25 +01:00
|
|
|
}
|