哔哩哔哩Android(JetPack)学习心得

ConstraintLayout布局

1.使用辅助线,设置成百分比,每个元件都对齐上下两根辅助线,左右铺满

竖屏

哔哩哔哩Android(JetPack)学习心得_第1张图片
横屏

哔哩哔哩Android(JetPack)学习心得_第2张图片
源码链接

2.竖屏和横屏是可以分开单独布局的,以利于充分利用空间

秘密就在这里
哔哩哔哩Android(JetPack)学习心得_第3张图片
竖屏

哔哩哔哩Android(JetPack)学习心得_第4张图片
横屏

哔哩哔哩Android(JetPack)学习心得_第5张图片
源码链接

屏幕横竖屏切换及状态保存

当我们点击Button1后,上面显示的文本信息在横竖屏切换后会保存

竖屏

哔哩哔哩Android(JetPack)学习心得_第6张图片
横屏
哔哩哔哩Android(JetPack)学习心得_第7张图片
源码链接

ViewModel,另一种横竖屏切换数据保存方法,同时可用于Activity与Fragment之间,Fragment与Fragment之间数据的交互.

继承ViewModel类

public class MyViewModel extends ViewModel {
    public  int number=0;
}

使用

myViewModel= new ViewModelProvider(this).get(MyViewModel.class);

源码链接

LiveData 解决了数据界面有变化自动刷新问题

直接上源码链接

XML界面里直接写代码,Data Binding

这是敲得代码链接

篮球比赛记分器例程

直接上源码链接

点击Home键,横竖屏切换,Activity销毁后状态保存又一方法

ViewModel中SavedStateHandle类
源码链接

数据持久化 SharedPreferences

源码链接

使用SharedPreferences对VieModel中的数据持久化

源码链接

导航组件例程

源码链接

导航组件通过Bundle传递数据

源码链接

导航组件通过ViewModel共享数据

源码链接

你可能感兴趣的:(哔哩哔哩Android(JetPack)学习心得)