【问题标题】:Unresolved Reference when trying to switch Fragments [closed]尝试切换片段时未解决的参考[关闭]
【发布时间】:2021-08-10 23:49:12
【问题描述】:

我做错了什么?

我正在尝试在单击按钮时进行简单的 Fragment 切换,但它在第 46 行一直返回错误,更具体地说是 "v" when(v .id){

错误: 未解决的参考:v

我的代码:

class MainActivity : AppCompatActivity(), View.OnClickListener {
   
    private lateinit var buttonHome: Button
    private lateinit var buttonConsoles: Button
    private lateinit var buttonGames: Button

    private lateinit var homeFragment: HomeFragment
    private lateinit var gameFragment: GameFragment
    private lateinit var consoleFragment: ConsoleFragment

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)

        setContentView(R.layout.activity_main)

        buttonHome = findViewById(R.id.button_home)
       
        buttonHome.setOnClickListener (this)
        buttonConsoles = findViewById(R.id.button_consoles)
        buttonConsoles.setOnClickListener(this)
        buttonGames = findViewById(R.id.button_games)
        buttonGames.setOnClickListener(this)

        homeFragment = HomeFragment()
        gameFragment = GameFragment()
        consoleFragment = ConsoleFragment()
    }

    private fun setFragment(fragment: Fragment){
        val fragmentTransaction = supportFragmentManager.beginTransaction()

        fragmentTransaction.replace(R.id.frame_fragments, fragment)
        fragmentTransaction.commit()
    }

     //ERROR HERE
     override fun onClick(p0: View) {
        when(v.id){
            R.id.button_home -> {
                setFragment(homeFragment)
            }

            R.id.button_games -> {
                setFragment(gameFragment)
            }

            R.id.button_consoles -> {
                setFragment(consoleFragment)
            }
        }
    }
}

【问题讨论】:

    标签: android kotlin android-fragments


    【解决方案1】:

    您已将View 参数命名为onClick 方法p0,而不是v。您需要将其更改为 v 或通过 p0.id 引用它

    【讨论】:

      猜你喜欢
      • 2016-08-06
      • 2022-01-08
      • 1970-01-01
      • 2018-08-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多