0

我试图更好地理解 Android 框架,因此我创建了一个简单的应用程序,它实际上只包含一个按钮。每当单击此按钮时,调用sendMessage中的方法都会MainActivity启动一个新活动DisplayMessageActivity,该活动显示一个随机字符串。

我现在的问题是,onClick按钮的事件(在XML布局中定义)是如何工作的?!我明白,每当我点击我的按钮时,我定义的方法 ( android:onClick="sendMessage") 都会被调用,但我真的很好奇最终哪个方法调用了我的方法,因为语法中显然没有调用我的方法。

我已经使用 androguard 将我的 APK 文件反编译为 smalicode 并搜索了我的sendMessage方法的调用。不幸的是我找不到任何东西。

谁能解释一下这个机制是如何运作的,因为根据这篇文章:

android:onClick XML 属性与 setOnClickListener 究竟有何不同?

实际上应该有一个方法,最后调用我的onClick方法。

4

1 回答 1

1

这是通过反射完成的。

如果您想确切地知道谁在调用您的方法,请抛出异常并查看堆栈跟踪。

于 2013-11-13T23:40:18.613 回答