与子视图
问题描述:
视图获取触摸我想有使用的顶视图(UIView的子类),它捕捉触摸与子视图
- (void) touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
- (void) touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
...
.H
@interface XView : UIView<UITableViewDataSource, UITableViewDelegate>
@property (nonatomic, strong) UITableView * tableView;
@end
这工作得很好,如果视图是空的,但只要我插入(addSubview)可以说一个UITableView
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
// Initialization code
self.tableView = [[UITableView alloc] initWithFrame:self.frame];
self.tableView.delegate = self;
self.tableView.dataSource = self;
[self addSubview:self.tableView];
}
return self;
}
比内XVIEW不trigge触摸方法红色
答
你可能需要继承你的UITableView或使用UITapGestureRecognizer来解决这个问题。我个人会使用UITapGestureRecognizer。
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapCode:)];
[self.tableView addGestureRecognizer:tap];
,然后你可以处理你的水龙头在这里:
- (void)tapCode:(UITapGestureRecognizer *)recognizer
{
// code goes here
}
如果子类的UITableView,你可以把你的touchesBegan:withEvent在那里。