Android通过泛型简化findViewById类型转换

Posted llguanli

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android通过泛型简化findViewById类型转换相关的知识,希望对你有一定的参考价值。

曾经老用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就可以.

以上是关于Android通过泛型简化findViewById类型转换的主要内容,如果未能解决你的问题,请参考以下文章

Android 中泛型在实际项目中的使用小结

Android开发学习之路--Annotation注解简化view控件之初体验

不需要ViewInject,简化你的findViewById

在android中创建方法findViewById'int'

Android从findViewById创建一个新对象与铸造一个findViewById

自定义控件问题,在布局里使用 android:visibility="gone" 无效,而且findviewbyid得不到该控件