为什么我不能在Kotlin中访问布局文件中的组件?我有这个代码
fragment_first_image
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout 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"
tools:context=".FirstImageFragment">
<ImageView
android:id="@+id/firstFragmentImageView"
android:scaleType="center"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<ProgressBar
android:id="@+id/firstFragmentProgressbar"
android:visibility="invisible"
android:layout_gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</FrameLayout>
和Kotlin课
FirstImageFragment
import android.os.Bundle
import androidx.fragment.app.Fragment
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
class FirstImageFragment : Fragment() {
private val imageUrl = "https://static.pexels.com/photos/596940/pexels-photo-596940.jpeg"
private fun loadImageUsingGlide() {
THIS IS THE ERROR ====> firstFragmentProgressbar.visibility = VISIBLE
}
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?): View? {
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_first_image, container, false)
}
companion object {
fun newInstance() = FirstImageFragment()
}
}
我无法访问UI组件的ID。我接下来可以尝试什么?
答案 0 :(得分:1)
import kotlinx.android.synthetic.main.fragment_first_image.*
在片段中添加以上导入。
这将起作用,但是数据绑定/视图绑定比上述方法要好得多。