嵌套视图按钮未单击
Posted
技术标签:
【中文标题】嵌套视图按钮未单击【英文标题】:Nested Views-button is not clicking 【发布时间】:2010-03-26 11:45:28 【问题描述】:我有一个视图,其中添加了一个日期选择器和一个按钮。 还有另一个视图将上述视图添加为子视图。 但是像 touchesBegan 和按钮的操作这样的事件并没有在子视图上被点击。 请帮忙
父视图的代码是:
iTagDatePicker *dt=[[iTagDatePicker alloc] initWithFrame:CGRectMake(0.0, 180.0, 320.0, 240.0)];
//dt.userInteractionEnabled=YES;
//[dt becomeFirstResponder];
dt.backgroundColor=[UIColor clearColor];
[UIView beginAnimations:@"animation" context:nil];
[UIView setAnimationDuration:1.0];
CGPoint cntr;
cntr.x=160.0;
cntr.y=420.0;
dt.center=cntr;
[self.view addSubview:dt];
self.view.userInteractionEnabled=YES;
CGPoint cntr1;
cntr1.x=160.0;
cntr1.y=158.0;
dt.center=cntr1;
[UIView commitAnimations];
[dt release];
子类的代码是:
- (id)initWithFrame:(CGRect)frame
if (self = [super initWithFrame:frame])
dtPicker=[[UIDatePicker alloc] initWithFrame:CGRectMake(frame.origin.x, frame.origin.y, 320.0, 216.0)];
dtPicker.datePickerMode=UIDatePickerModeDate;
dtPicker.date=[NSDate date];
[self addSubview:dtPicker];
btn=[[UIButton buttonWithType:UIButtonTypeDetailDisclosure]retain];
btn.frame=CGRectMake(110.0, 400.0, 100.0, 20.0);
[btn setTitle:@"Done" forState:UIControlStateNormal];
btn.userInteractionEnabled=YES;
[btn becomeFirstResponder];
[btn addTarget:self action:@selector(SelectedVal:) forControlEvents:UIControlEventTouchDown];
[self addSubview:btn];
return self;
按钮不工作
【问题讨论】:
【参考方案1】:子类化父视图并将触摸传递给其子视图。
【讨论】:
嗨。我已经添加了代码。你能详细说明我做错了什么吗? 我不知道。但是,如果您想正确执行此操作,请将父UIView
子类化,为 UIButton
和日期选择器对象添加属性,然后将触摸传递给这些属性。以上是关于嵌套视图按钮未单击的主要内容,如果未能解决你的问题,请参考以下文章
在屏幕下方加载时,UITableViewCell 按钮单击未注册