[英]Modfiying inflated inflated view in a dialogfragment after calling show()
[英]How to access custom view inflated in DialogFragment
我需要訪問DialogFragment
中已DialogFragment
。 inflater
和container
似乎尚未解決,但是當我將它們添加到onCreateDialog
的括號中時,將overrides nothing
返回overrides nothing
錯誤。 在這種情況下正確的解決方案是什么?
class MyDialogFragment : DialogFragment() {
override fun onCreateDialog(savedInstanceState: Bundle?): Dialog {
val builder = AlertDialog.Builder(activity)
val rootView = inflater.inflate(R.layout.dialog_sample, container, false)
lateinit var tabLayout: TabLayout
lateinit var viewPager: ViewPager
builder.setIconAttribute(R.attr.imgNight)
builder.setTitle("My Program")
builder.setView(rootView)
builder.setPositiveButton(getString(R.string.ok)) { dialog, _ -> dialog.dismiss() }
tabLayout = rootView.findViewById(R.id.tabLayout)
viewPager = rootView.findViewById(R.id.viewPager)
val adapter = CustomAdapter(childFragmentManager)
adapter.addFragment("Boy", CustomFragment.createInstance("Oscar"))
adapter.addFragment("Girl", CustomFragment.createInstance("Stacy"))
adapter.addFragment("Robot", CustomFragment.createInstance("Aeon"))
viewPager.adapter = adapter
tabLayout.setupWithViewPager(viewPager)
return builder.create()
}
}
container
通過null,因為沒有父視圖。 至於inflater
使用LayoutInflater.from(requireContext)
。
然后,您可以在對話框構建器中使用該視圖。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.