2013-01-02 46 views

回答

3

如果將多邊形定義爲CGPath,則可以使用CGPathContainsPoint() ...您可以告訴我們關於您的應用程序概念的更多信息嗎?

編輯:

還有更高級別的UIBezierPath和/或NSBezierPath ..這兩個對象有-containsPoint方法。

+0

感謝。這正是我正在尋找的。我找不到該解決方案爲我的生活。 – user1941895

+0

好,這是使用核芯顯卡C API,所以它不是在的OBJ-C或C++的級別......因此,它不會出現在對象 - 類文檔。 – nielsbot

0

也許你正在做一些不尋常的,就像你只想成爲一個三角形或東西內檢測到觸摸。如果是這樣,你可以忽略這一點。但是,因爲你是新來的iOS,我會建議使用一個UIControl子與目標 - 動作對或UIGestureRecognizer

示例代碼如下:

UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom]; 
[button addTarget:self action:@selector(buttonPressed:) forControlEvents:UIControlEventTouchUpInside]; 

target後 - 可能是你的視圖控制器,您將實現方法:

- (void)buttonPressed:(id)sender 
{ 
} 

用手勢識別器,你會增加手勢識別器與UIView相似,並與UIControl一樣添加目標動作對:

UITapGestureRecognizer *tapRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(viewTapped:)]; 
[self.view addGestureRecognizer:tapRecognizer]; 

- (void)viewTapped:(UIGestureRecognizer *)recognizer 
{ 
} 

這些是基本用戶交互的典型方法。你必須簡單用這些時間比使用touchesBegan &公司,但如果他們是你需要什麼然後其他應答者有你覆蓋。

相關問題