Java android如何处理GUI事件?

Java android如何处理GUI事件?,java,android,user-interface,Java,Android,User Interface,我试图理解安卓系统中点击按钮时会发生什么。所以我设置了几个断点来点击一个简单的按钮。图中显示了单击按钮时发生的情况。我的问题是:(GUI生成的事件是由于与GUI交互而生成的事件,例如按钮单击、编辑文本等。) 1-Looper.loop()是应用程序的主循环还是操作系统Looper的主循环 2-ViewRootImpl(处理程序).dispatchMessage(消息)驻留在哪里?应用程序还是操作系统 3-我可以在主循环器中截获GUI生成的事件吗?如果是,那怎么办 4-我们可以安全地假设所有GUI

我试图理解安卓系统中点击按钮时会发生什么。所以我设置了几个断点来点击一个简单的按钮。图中显示了单击按钮时发生的情况。我的问题是:(GUI生成的事件是由于与GUI交互而生成的事件,例如按钮单击、编辑文本等。)

1-Looper.loop()是应用程序的主循环还是操作系统Looper的主循环

2-ViewRootImpl(处理程序).dispatchMessage(消息)驻留在哪里?应用程序还是操作系统

3-我可以在主循环器中截获GUI生成的事件吗?如果是,那怎么办

4-我们可以安全地假设所有GUI生成的事件都在ViewRootImpl(handler.handleCallback(Message)中处理吗

Looper.loop()是应用程序的主循环还是操作系统Looper

我不知道你认为“操作系统活套”是什么。
活套
在您的流程中运行,如果这是您的意思的话

ViewRootImpl(处理程序).dispatchMessage(消息)驻留在哪里?应用程序还是操作系统

我不知道在这种情况下你认为“操作系统”是什么
ViewRootImpl
是一个Dalvik编译的类,加载到Dalvik VM中,其代码在进程中执行。否则,您将无法在堆栈跟踪中看到它

我可以在主循环器中截获GUI生成的事件吗

只需修改固件,用您自己的代码替换各种类,如
ViewRootImpl

我们可以安全地假设所有GUI生成的事件都在ViewRootImpl(handler.handleCallback(Message)中处理吗

我当然不会这样假设。例如,并非所有应用程序都使用小部件框架(例如,游戏)