[英]Android view binding root property ignored
I'm trying to use View Binding in android, but the root's property ( layout_gravity, layout_width
) got ignored after build and installed,我正在尝试在 android 中使用视图绑定,但是在构建和安装后根的属性(
layout_gravity, layout_width
)被忽略了,
it looks fine on design view ( wrap_content
and center_vertical
).它在设计视图(
wrap_content
和center_vertical
)上看起来不错。
i've enabled viewBinding in app gradle (android studio 3.6.1), and my root view group is a LinearLayout
with some property我在 app gradle (android studio 3.6.1) 中启用了 viewBinding,我的根视图组是一个带有一些属性的
LinearLayout
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:orientation="vertical"
tools:context=".MainActivity">
...
class MainActivity : AppCompatActivity() {
private lateinit var binding: ActivityMainBinding
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
binding = ActivityMainBinding.inflate(layoutInflater)
setContentView(binding.root)
}
}
and if i change layout_gravity
to center
or other value, it'll get unresolved reference: ActivityMainBinding
in MainActivity
如果我将
layout_gravity
更改为center
或其他值,它将得到unresolved reference: ActivityMainBinding
MainActivity
unresolved reference: ActivityMainBinding
am i not supposed to use property on root layout?我不应该在根布局上使用属性吗?
so i switched to dataBinding instead of viewBinding所以我切换到 dataBinding 而不是 viewBinding
class MainActivity : AppCompatActivity() {
private lateinit var binding: ActivityMainBinding
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
binding = DataBindingUtil.setContentView(this, R.layout.activity_main)
}
}
<layout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools">
<LinearLayout
...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.