Android实例项目解析 2021.06.17 周四
Android实例项目解析 2021.06.17 周四
更新IDE后,创建了最新的实例项目,发现有很多新特性的写法,边学习,查资料理解,在这里梳理下。
新的改变
新的示例项目,不管是从外观,还是操作体验上,让人的感觉都是很丝滑,很舒服。从代码中发现几个新的类:
1 AppBarConfiguration
private AppBarConfiguration appBarConfiguration;
private ActivityMainBinding binding;
2 ActivityMainBinding
private ActivityMainBinding binding;
视图绑定很有意思,只要在设置中开启了,对应的xml就会生成一份绑定对象。直接可以从该对象里面取值。比较方便。
NavController
NavHostFragment
3 AppCompatActivity (之前不怎么用,所以这次一起查漏补缺。)
从Android 21之后引入Material Design的设计方式,为了支持Material Color 、调色板、toolbar等各种新特性,AppCompatActivity就应用而生。
代替了原有的ActionBarActivity。在AppCompatActivity中,更是引入了AppCompatDelegate类的设计,可以在普通的Acitivity中使用AppCompate的相关特性。
去掉AppcompaActivity的标题栏方法:
if (getSupportActionBar()!=null){
getSupportActionBar().hide();
}
总结一下:AppcompaActivity相对于Activity的主要的两点变化;
1:主界面带有toolbar的标题栏;
2,theme主题只能用android:theme=”@style/AppTheme (appTheme主题或者其子类),而不能用android:style。 否则会提示错误: Caused by: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.