1.作用
1.性能优化:
用到的时候再去加载,不调用加载的话,不会显示
2.使用
1.xml
其中hecate_listview2x为里面加载的布局文章来源:https://www.toymoban.com/news/detail-727644.html
<ViewStub
android:id="@+id/hecate1_recycler_vs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout="@layout/hecate_listview2x"
/>
2.Java代码
- 一定要先设置加载监听setOnInflateListener,再调用加载inflate(),不然会报错
class MainActivity : ComponentActivity() {
private lateinit var mainBinding: ActivityMainBinding
private lateinit var hecateListview2xBinding: HecateListview2xBinding
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
mainBinding= ActivityMainBinding.inflate(layoutInflater)
setContentView(mainBinding.root)
//viewStub加载布局的监听方法
mainBinding.hecate1RecyclerVs.setOnInflateListener { viewStub, view ->
hecateListview2xBinding= HecateListview2xBinding.bind(view)//viewbinding绑定viewStub里面的布局
}
//viewStub加载
mainBinding.hecate3RecyclerVs.inflate()
//对viewStub加载布局里面的view方法的调用
hecateListview2xBinding.textView.setOnClickListener {
Toast.makeText(
this,
"我是textView",
Toast.LENGTH_SHORT
).show() }
}
}
3.总结
文章来源地址https://www.toymoban.com/news/detail-727644.html
4.遇到的问题
1.一定要先设置加载监听setOnInflateListener,再调用加载inflate(),不然会报错
2.
3.
4.
5.
6.
到了这里,关于ViewStub的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!