簡體   English   中英

如何捕獲iOS中的所有觸摸事件?

[英]How to capture ALL touch events in iOS?

我想做一個應用程序,它捕獲所有觸摸事件並在工具欄中顯示x,y值。

  1. 盡管事件未在此應用中發生,但是否有可能捕獲所有事件?
  2. 如何在工具欄中像電池圖標一樣顯示此應用程序(當應用程序在后台運行時)?

1)您可以在運行自己的應用程序時捕獲觸摸事件,這非常容易。 一種方法是將單個根視圖控制器實現

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event;
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event;
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event;
- (void)touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event;

如果您真的有興趣顯示其坐標,則還必須考慮諸如多點觸控情況下的問題。

然而,

這對於其他應用程序是不可能的。 2)根本不可能。 您無權訪問狀態欄,並且無論如何,當應用程序在后台運行時,您都將無法執行任何操作,例如捕獲觸摸事件。 您只能在應用程序位於前台時捕獲事件。

在沒有越獄的設備上(甚至不可能在有根的設備上)都無法實現您的目標,因為它違反了Application Sandbox的精神。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM