2010-02-23 2 views
0

У меня проблема. У меня есть UIView, который выглядит так: alt text http://img193.imageshack.us/img193/6641/img0157y.pngКак правильно обнаружить штрихи в моем UIView?

В этом представлении контроллера я реализовал метод «touchhesBegan: withEvent:», но метод запускается только при касании панели в нижней части представления, ничего происходит, когда я касаюсь стола.

Как я могу изменить это поведение, чтобы иметь возможность обнаруживать штрихи, которые встречаются в таблице?

Это код, который в основном заявляет, что UIViewController:

#import <Foundation/Foundation.h> 
#import <QuartzCore/QuartzCore.h> 

@interface TripSearchDetailViewController : UIViewController 
{ 
    //Parent of this sub-view. 
    UIViewController *parentController; 

    //GUI elements 
    UITableView   *tableView; 
    UIButton   *backButton; 
} 

//Button actions 
- (IBAction) goBack:(id) sender; 
- (IBAction) showDatePicker:(id) sender; 

//Class Methods. 
- (void) presentDatePicker; 


@property (nonatomic, retain) UIViewController  *parentController; 
@property (nonatomic, retain) IBOutlet UITableView *tableView; 
@property (nonatomic, retain) IBOutlet UIButton  *backButton; 

@end 

ответ

2

Похоже, у вас есть UITableViewController, а не UIViewController. Ваш вид таблицы перехватывает и обрабатывает штрихи, прежде чем они доберутся до вашего контроллера. Вам нужно подклассифицировать UITableView, переопределить его -touchesBegan: withEvent: method, а затем создать стандартный UIViewController, который добавит ваш новый подкласс в иерархию представлений.

+0

@Ben: Я уверен, что этот класс является UIViewController (отредактировал мое сообщение, чтобы добавить код @interface этого класса). Хотя, я добавил UITableView с построителем интерфейса (не программно), может быть, это может быть проблемой? – Goles

+0

Если это UIViewController, то просто замените UITableView на пользовательский подкласс UITableView, который переопределяет -touchesBegan: withEvent :. –

0

Я думаю, что это могло бы помочь реализовать метод hitTest: withEvent: в вашем TripSearchDetailViewController. Если вы просто вернете истину в этом методе, ваше прикосновение должно быть распознано. см. Также: http://developer.apple.com/iphone/library/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/EventHandling/EventHandling.html

Смежные вопросы