以前老用findViewById,每次使用还得add cast一下今天看到一个视频(根据视频中使用的IDE推断,应该是几年前的视频了..),使用了一个方法,可以不用每次使用findViewById都去add cast.
我根据视频中的写法进行优化,具体做法:
创建一个BaseActivity,让它继承Activity,在其中添加如下方法:
// 因为是findView所以泛型类型应该继承View
protected <T extends View> T genericFindViewById(int id) {
//return返回view时,加上泛型T
return (T) findViewById(id);
} 之后将所用到的Activity都继承BaseACtivity,然后直接使用genericFindViewById来代替findViewById即可.
例如:
Text rl_guide = genericFindViewById(R.id.rl_guide);
private EditText editor;
editor = genericFindViewById(R.id.p_name);
editor.setText("Hello World!"); 版权声明:本文为pengyu1801原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。