android获取组件id,Android 获取控件id的三种方式

前言:

获取控件是入门的基本的,相信这个不用说就知道怎么得到资源文件中的控件id

有findViewbyid

有注解方式

反射的方式

通过findViewbyid获取

原理

我们点击进入Activity.java类中看源码,通过源码我们发现返回的是getWindow.findViewById,这个window是什么呢?我们再次点击进去看看,

···

/**

* Finds a view that was identified by the id attribute from the XML that

* was processed in {@link #onCreate}.

*

* @return The view if found or null otherwise.

*/

@Nullable

public View findViewById(@IdRes int id) {

return getWindow().findViewById(id);

}

···

进入window发现是window,window是一个抽象类,window不能实现UI界面,那么这个getDecorView()返回的是一个VIew来管理Activity UI界面的

/**

* Finds a view that was identified by the id attribute from the XML that

* was processed in {@link android.app.Activity#onCreate}. This will

你可能感兴趣的:(android获取组件id)