package com.example.mask_talk.base.local
|
|
import android.view.View
|
import android.view.ViewGroup
|
import androidx.viewpager.widget.PagerAdapter
|
import com.zhaoyang.driver.R
|
import com.zhaoyang.driver.base.MyBaseActivity
|
import com.zhaoyang.driver.utils.glide.GlideUtil
|
import kotlinx.android.synthetic.main.base_activity_gride.*
|
import kotlinx.android.synthetic.main.item_gride.view.*
|
|
abstract class BaseGrideActivity : MyBaseActivity() {
|
|
var listImage = mutableListOf<View>()
|
|
override fun setContentView() {
|
setContentView(R.layout.base_activity_gride)
|
}
|
|
override fun initView() {
|
showHeader(false)
|
showTitle(false)
|
}
|
|
fun initGuide(list: MutableList<String>) {
|
for (str in list.indices) {
|
var view = layoutInflater.inflate(R.layout.item_gride, null)
|
GlideUtil.load(mContext,list[str], view.iv_gride,
|
0,R.color.write
|
)
|
listImage.add(view)
|
if (list.last() == list[str]) {
|
view.btn_to.visibility = View.VISIBLE
|
view.btn_to.setOnClickListener {
|
toNext()
|
}
|
}
|
view.setOnClickListener {
|
clickNum(str)
|
}
|
}
|
view_pager_gride.adapter = MyPagerAdapter(listImage)
|
}
|
|
abstract fun clickNum(num: Int)
|
|
abstract fun toNext()
|
|
|
class MyPagerAdapter(private val listImage:List<View>) : PagerAdapter( ){
|
override fun isViewFromObject(view: View, `object`: Any): Boolean {
|
return view == `object`
|
}
|
|
override fun getCount(): Int {
|
return listImage.size
|
}
|
|
override fun destroyItem(container: ViewGroup, position: Int, `object`: Any) {
|
container.removeView(listImage[position])
|
}
|
|
override fun getItemPosition(`object`: Any): Int {
|
return super.getItemPosition(`object`)
|
}
|
|
override fun instantiateItem(container: ViewGroup, position: Int): Any {
|
container.addView(listImage[position]);
|
return listImage[position];
|
}
|
|
}
|
|
|
}
|