Android 0,清理投射
谷歌在 2017 年 IO 中宣布的一件事就是所谓的“抛弃”:)。 Android 开发人员不必为 findViewById() 进行手动转换。例如,使用 findViewById() 获取文本视图的旧方法是这样的。
TextView txtDesc = (TextView) findViewById(R.id.textViewDesc);
txtDesc.setText(getString(R.string.info_angkot_description));
虽然新的方式是这样的
TextView txtDesc = findViewById(R.id.textViewDesc);
txtDesc.setText(getString(R.string.info_angkot_description));
这是一个简单的改变。但是对于一个经验丰富的程序员来说,像这样干净的代码可以让你非常开心,并且有助于你的编码情绪:)
要做到这一点,您只需在应用 build.gradle 中将项目编译的 sdk 版本设置为 26 版。
您仍然可以针对早期的 sdk 版本,所以这是一个非侵入性的更改。
现在真正的问题是,如何清理一直使用强制转换的旧代码。尤其是当您拥有数百个活动文件时。您可以手动完成,也可以聘请实习生来完成 ?。但幸运的是,对于所有这些实习生来说,android studio 已经准备好帮助我们。
当您放置插入符号(或单击多余的投射)时,android studio 会建议 2 个选项来处理多余的投射。
首先,它会建议删除多余的演员表,或者您可以选择清理代码。它将删除该文件的所有冗余演员表。这更好,但我们想要更多。我们不想打开每个文件并逐个清理。
使 IntelliJ idea 特别的一件事是一种称为意图操作的功能。您所要做的就是按 ctrl+shift+A 然后键入 clean。并选择 Code Clean up action,并选择整个项目范围。通过这几个简单的步骤,您的代码将变得更加简洁。
重要的一点是,您可以使用一些代码版本控制系统来执行此操作。通过这种方式,您可以比较意图操作所做的更改并恢复您想要的任何文件。
从原帖复制:
https://medium.com/@abangkis/android-0-clean-up-casting-c30acec56cef