Created
April 17, 2021 11:30
-
-
Save ibrahim4851/1da7767e0a199b9ec1f91022c9e38e32 to your computer and use it in GitHub Desktop.
AdapterViewPager
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class Adapter: PagerAdapter { | |
var vPagerModel: List<ViewPagerModel> | |
lateinit var layoutInflater: LayoutInflater | |
var context: Context | |
constructor(model: List<ViewPagerModel>, context: Context): super() { | |
this.vPagerModel = model | |
this.context = context | |
} | |
override fun getCount(): Int { | |
return vPagerModel.size | |
} | |
override fun isViewFromObject(view: View, `object`: Any): Boolean { | |
return view.equals(`object`) | |
} | |
override fun instantiateItem(container: ViewGroup, position: Int): Any { | |
layoutInflater = LayoutInflater.from(context) | |
val view: View = layoutInflater.inflate(R.layout.viewpageritem, container, false) | |
val imageView: ImageView | |
val title: TextView | |
val content: TextView | |
imageView = view.findViewById(R.id.imageview) | |
title = view.findViewById(R.id.title) | |
content = view.findViewById(R.id.content) | |
Glide.with(context).load(vPagerModel.get(position).image).into(imageView) | |
title.text = vPagerModel.get(position).title | |
content.text = vPagerModel.get(position).content | |
view.setOnClickListener { | |
val intent = Intent(context, Details::class.java) | |
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK) | |
intent.putExtra("detail", vPagerModel.get(position).content) | |
context.startActivity(intent) | |
} | |
container.addView(view, 0) | |
return view | |
} | |
override fun destroyItem(container: ViewGroup, position: Int, `object`: Any) { | |
container.removeView(`object` as View) | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment