【问题标题】:Kotlin: how to open activity from fragment with button in androidKotlin:如何在android中使用按钮从片段中打开活动
【发布时间】:2020-10-16 14:39:02
【问题描述】:

如何在片段布局中使用按钮打开新活动?

我试过了

override fun onCreateView(
        inflater: LayoutInflater, container: ViewGroup?,
        savedInstanceState: Bundle?
    ): View? {
        val view: View = inflater.inflate(R.layout.fragment_home, container, false)

        button25.setOnClickListener {
            val intent = Intent (getActivity(), settingActivity::class.java)
            getActivity().startActivity(intent)
        }
        return view
    }

知道如何在片段中启动新活动吗?

【问题讨论】:

  • 应该可以。单击按钮时会发生什么?
  • 它应该打开一个活动
  • 我对这个真的很陌生,我无法理解
  • 你可以打电话给startActivity(intent)而不需要getActivity()如果你有任何问题,请用你得到的错误更新问题

标签: android kotlin android-fragments fragment android-fragmentactivity


【解决方案1】:

在创建片段视图后创建按钮的侦听器,这会在 onViewCreated

中提供回调

onCreateView 在 Fragment 的视图处于创建过程中并且您在创建之前访问 Fragment 视图的子视图时调用。

应该这样做,

override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
  super.onViewCreated(view, savedInstanceState)

   button25.setOnClickListener {
      activity?.let{
      val intent = Intent (it, Main::class.java)
      it.startActivity(intent)
    }

  }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-18
    • 2023-03-28
    • 1970-01-01
    • 1970-01-01
    • 2019-04-20
    相关资源
    最近更新 更多