web-dev-qa-db-ja.com

フラグメントKotlinを変更する方法

私はコトリングで始めていますが、フラグメント間で変更する方法がわかりません。このコードを試してみました。

val manager = supportFragmentManager
    val transaction = manager.beginTransaction()
    transaction.add(R.layout.fragment_information.toInt(), ComplainFragment())
    transaction.commit()

R.layout.fragment_information.toInt()

しかし、フラグメントIDが見つからないため、このパラメーターにエラーがあります。

3
Manuel Miranda

まだ誰かがこれに迅速なアプローチを必要とする場合に備えて。フラグメントを変更する必要があるときにいつでも簡単に呼び出せる関数を作成しました。

 private fun replaceFragment(fragment: Fragment) {
    val transaction = supportFragmentManager.beginTransaction()
    transaction.replace(R.id.frame, fragment)
    transaction.commit()
}

R.id.frame この場合、フラグメントを保持するアクティビティ内のフレームレイアウトのIDです。あとは関数を呼び出すだけです。

replaceFragment(HomeFragment())
0
Marcos Eznavil