Я пишу очень простое приложение в Android, но у меня проблема с передачей данных во фрагмент.
У меня есть TabLayout с ViewPager.
Этот TabLayout отображает две фракции.Один фрагмент статичен и жестко запрограммирован, как я и предполагал.Второй фрагмент содержит ImageView, который отображает изображение купона.
Я бы хотел, чтобы мой CouponFragemnt отображал изображение, которое я передаю из PagerAdapter этому фрагменту, но я не знаю, как это сделать.
Что использовать и как?Связка, Дополнительно?
У меня нет особой репутации для публикации изображений в StackOverflow, но вы можете посмотреть здесь: https://i.imgur.com/Dc27bQM.png
PageAdapter ()
class ViewPagerAdapter( fm: FragmentManager, private val numberOfFrags: Int) : FragmentStatePagerAdapter(fm) {
override fun getItem(position: Int): Fragment? {
when (position) {
0 -> return HowToUseFragment()
1 -> return CouponFragment() // I want to pass data, which tells fragment what image to display.
}
return null
}
override fun getCount(): Int {
return numberOfFrags
}
override fun getPageTitle(position: Int): CharSequence? {
when (position) {
0 -> return "Jak używać?"
1 -> return "Hamburger"
}
return super.getPageTitle(position)
}
}
CouponFragment ()
class CouponFragment : Fragment() {
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
// Inflate the layout for this fragment
val viewOfLayout = inflater.inflate(R.layout.fragment_coupon, container, false)
if (Build.VERSION.SDK_INT >= 21) {
viewOfLayout.coupon_IMGV.setImageDrawable(resources.getDrawable(R.drawable.coupon_hamburger, null))
}
else {
viewOfLayout.coupon_IMGV.setImageDrawable(resources.getDrawable(R.drawable.coupon_hamburger))
}
return viewOfLayout
}
}