小编Mur*_*rad的帖子

Fragment Android Kotlin 中的DataBinding+ViewModel

我是 DataBinding 的新手。我想在 Fragment 中使用 ViewModel 和 DataBinding。当我在 Activity 中使用时,它可以工作,但在 Fragment 中不起作用。请帮助使用数据绑定获取编辑文本内容。先感谢您。主活动.kt

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle

class MainActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        supportFragmentManager.beginTransaction().add(R.id.main,BlankFragment()).commit()

    }
}
Run Code Online (Sandbox Code Playgroud)

活动.main.xml

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/main"
    tools:context=".MainActivity">

</androidx.constraintlayout.widget.ConstraintLayout>
Run Code Online (Sandbox Code Playgroud)

空白片段.kt

import android.os.Bundle
import androidx.fragment.app.Fragment
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.databinding.DataBindingUtil
import com.resocoder.databinding.databinding.FragmentBlankBinding

class BlankFragment : Fragment() {

    override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?,
                              savedInstanceState: Bundle?): View? {
        val binding: FragmentBlankBinding = DataBindingUtil.inflate(inflater,
                R.layout.fragment_blank, container, …
Run Code Online (Sandbox Code Playgroud)

data-binding android fragment kotlin android-databinding

3
推荐指数
1
解决办法
6026
查看次数