{"id":8440,"date":"2023-11-02T16:12:07","date_gmt":"2023-11-02T08:12:07","guid":{"rendered":"https:\/\/www.zhidianwl.net\/zhidianwl\/?p=8440"},"modified":"2023-11-02T16:12:07","modified_gmt":"2023-11-02T08:12:07","slug":"%e5%ae%89%e5%8d%93%e7%b3%bb%e7%bb%9f%e4%ba%8b%e4%bb%b6%e5%88%86%e5%8f%91%e6%9c%ba%e5%88%b6%e4%bb%8b%e7%bb%8d","status":"publish","type":"post","link":"https:\/\/www.zhidianwl.net\/zhidianwl\/2023\/11\/02\/%e5%ae%89%e5%8d%93%e7%b3%bb%e7%bb%9f%e4%ba%8b%e4%bb%b6%e5%88%86%e5%8f%91%e6%9c%ba%e5%88%b6%e4%bb%8b%e7%bb%8d\/","title":{"rendered":"\u5b89\u5353\u7cfb\u7edf\u4e8b\u4ef6\u5206\u53d1\u673a\u5236\u4ecb\u7ecd"},"content":{"rendered":"
\u5b89\u5353\u7cfb\u7edf\u4e8b\u4ef6\u5206\u53d1\u673a\u5236\u662f\u6307\u5728\u7528\u6237\u64cd\u4f5c\u8bbe\u5907\u65f6\uff0c\u7cfb\u7edf\u5982\u4f55\u63a5\u6536\u3001\u5904\u7406\u548c\u5206\u53d1\u8fd9\u4e9b\u4e8b\u4ef6\u7684\u8fc7\u7a0b\u3002\u8fd9\u4e2a\u8fc7\u7a0b\u6d89\u53ca\u5230\u591a\u4e2a\u7ec4\u4ef6\u548c\u6a21\u5757\uff0c\u5305\u62ec\u8f93\u5165\u8bbe\u5907\u9a71\u52a8\u7a0b\u5e8f\u3001\u7cfb\u7edf\u670d\u52a1\u3001\u5e94\u7528\u7a0b\u5e8f\u7b49\u3002\u672c\u6587\u5c06\u5bf9\u5b89\u5353\u7cfb\u7edf\u4e8b\u4ef6\u5206\u53d1\u673a\u5236\u8fdb\u884c\u8be6\u7ec6\u4ecb\u7ecd\u3002<\/p>\n
\u5b89\u5353\u7cfb\u7edf\u4e8b\u4ef6\u5206\u53d1\u673a\u5236\u7684\u57fa\u672c\u6d41\u7a0b\u5982\u4e0b\uff1a<\/p>\n
1. \u7528\u6237\u64cd\u4f5c\u8bbe\u5907\uff0c\u4f8b\u5982\u70b9\u51fb\u5c4f\u5e55\u6216\u6309\u4e0b\u6309\u952e\uff0c\u8fd9\u4e9b\u64cd\u4f5c\u4f1a\u88ab\u8f93\u5165\u8bbe\u5907\u9a71\u52a8\u7a0b\u5e8f\u63a5\u6536\u3002<\/p>\n
2. \u8f93\u5165\u8bbe\u5907\u9a71\u52a8\u7a0b\u5e8f\u5c06\u63a5\u6536\u5230\u7684\u4e8b\u4ef6\u5c01\u88c5\u6210\u4e00\u4e2aInputEvent\u5bf9\u8c61\uff0c\u5e76\u5c06\u5176\u4f20\u9012\u7ed9InputDispatcher\u3002<\/p>\n
3. InputDispatcher\u662f\u4e00\u4e2a\u7cfb\u7edf\u670d\u52a1\uff0c\u5b83\u8d1f\u8d23\u5c06InputEvent\u5bf9\u8c61\u5206\u53d1\u7ed9\u5408\u9002\u7684\u5e94\u7528\u7a0b\u5e8f\u6216\u7cfb\u7edf\u7ec4\u4ef6\u3002<\/p>\n
4. InputDispatcher\u4f1a\u6839\u636eInputEvent\u7684\u7c7b\u578b\u548c\u76ee\u6807\u5e94\u7528\u7a0b\u5e8f\u7684\u72b6\u6001\u6765\u51b3\u5b9a\u5982\u4f55\u5206\u53d1\u4e8b\u4ef6\u3002\u5982\u679c\u76ee\u6807\u5e94\u7528\u7a0b\u5e8f\u6b63\u5728\u524d\u53f0\u8fd0\u884c\uff0cInputEvent\u4f1a\u88ab\u76f4\u63a5\u53d1\u9001\u5230\u8be5\u5e94\u7528\u7a0b\u5e8f\u7684InputQueue\u4e2d\u3002\u5982\u679c\u76ee\u6807\u5e94\u7528\u7a0b\u5e8f\u4e0d\u5728\u524d\u53f0\u8fd0\u884c\uff0cInputEvent\u4f1a\u88ab\u53d1\u9001\u5230\u7cfb\u7edf\u670d\u52a1\u4e2d\u7684InputManager\u4e2d\uff0c\u7531InputManager\u5c06\u5176\u53d1\u9001\u7ed9\u76ee\u6807\u5e94\u7528\u7a0b\u5e8f\u3002<\/p>\n
5. \u76ee\u6807\u5e94\u7528\u7a0b\u5e8f\u63a5\u6536\u5230InputEvent\u540e\uff0c\u4f1a\u5c06\u5176\u52a0\u5165\u5230EventQueue\u4e2d\uff0c\u5e76\u5728\u4e3b\u7ebf\u7a0b\u4e2d\u5904\u7406\u8be5\u4e8b\u4ef6\u3002<\/p>\n
6. \u5e94\u7528\u7a0b\u5e8f\u7684\u4e3b\u7ebf\u7a0b\u4f1a\u8c03\u7528ViewRootImpl\u7684dispatchTouchEvent\u65b9\u6cd5\uff0c\u5c06\u4e8b\u4ef6\u5206\u53d1\u7ed9\u5f53\u524dActivity\u4e2d\u7684View\u3002<\/p>\n