lmw
2023-04-03 16ea883d3c03fd8b910f9282aa1bc08378d40d54
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
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];
        }
 
    }
 
 
}