我正在学习android一个月左右。当我研究onClickListner和xml的onClick属性时,我得到了一个问题
在xml上编写代码android:onClick="showMap"
并在java文件上编写“public void showMap(View view)”后,应用程序会创建一个可以执行showMap方法的按钮。
我可以理解onClickListner
通过id(R.id.somthing
)控制xml元素。
showMap方法如何注意到该方法充当了非常xml元素的属性?我发现了一些其他的问题,它说它可能是因为view参数,但我并不完全相信。 xml和java文件如何相互影响?请让我知道他们的内部互动或我必须看到哪些源代码才能理解我的问题。
谢谢。
p.s当我问我擅长android的朋友时,他回答我找到“xml解析算法”。但我找不到令人满意的结果。
答案 0 :(得分:0)
xml
将在编译时解析,并使用您指定的属性创建相应的View对象。您在View的onClick属性中声明的方法是通过反射进行管理的。您可以查看here
答案 1 :(得分:0)
与我们的应用程序捆绑在一起的xml文件(出于性能原因,通过aapt / 2转换为二进制xml),然后在运行时使用LayoutInflater对其进行膨胀。