簡體   English   中英

如果選中單選按鈕,則希望在單擊按鈕時打開片段 1。 否則在單擊按鈕時打開片段 2

[英]if radio button is checked want to open fragment 1 on button click. else open fragment 2 on button click

在此處輸入圖像描述

當員工單選按鈕在點擊加號按鈕時打開片段 1 當 position 單選按鈕在點擊加號按鈕時打開片段 2


 setCurrentFragment(Fragment1())
        if (binding.incNavToolBar.rbEmployee.isChecked) {
            binding.incNavToolBar.ivToolbarEnd.setOnClickListener {
                findNavController().navigate(r.id.fragment1)
            }
        }
       
        if (binding.incNavToolBar.rbPosition.isChecked) {
            binding.incNavToolBar.ivToolbarEnd.setOnClickListener {
                findNavController().navigate(r.id.fragment2)
            }
        }

private fun setCurrentFragment(currentFragment: Fragment) {
        activity?.supportFragmentManager?.beginTransaction()
            ?.replace(R.id.fragmentContainerMenu, currentFragment)
            ?.commit()
    }

您的問題是您試圖在條件內分配操作,除了您的初始點擊分配之外,這不會給您動態結果。 為此,您必須在操作中翻轉條件,如下所示:

  binding.incNavToolBar.ivToolbarEnd.setOnClickListener {
            if (binding.incNavToolBar.rbEmployee.isChecked) {
                findNavController().navigate(r.id.fragment1)
            } else {
                findNavController().navigate(r.id.fragment2)
            }
        }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM