如何从OnClick函数调用片段

时间:2020-08-24 10:27:02

标签: android kotlin android-fragments

我想从fragment_profile转到fragment_details,同时单击fragment_profile中的详细信息按钮。这是按钮的xml

    android:id="@+id/btn_details"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_marginTop="8dp"
    android:onClick="onClickDetail"
    app:prof_icon="@string/fa_user"
    app:prof_title="Personal Info" />

现在我在onClickDetail函数上遇到一些困难,因为我不知道如何从fragment_profile到fragment_detail。

这是我到目前为止尝试过的

override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
    super.onViewCreated(view, savedInstanceState)
    btn_details.setOnClickListener(View.OnClickListener() {
        fun onClickDetail(view: View?) {
            val myIntent = Intent(activity, DetailFragment::class.java)
            activity?.finish()
            activity?.startActivity(myIntent)
        }
    }
    )
}

1 个答案:

答案 0 :(得分:3)

您应该像这样通过片段管理器打开片段:

activity!!
    .supportFragmentManager
    .beginTransaction()
    .replace(R.id.container, DetailFragment())
    .commitNow()