2

我是 ios 的初学者 .... 在我的一项活动中,我创建了自定义scrollView并在其上创建了一些自定义textField..现在,当我们单击时,textField我的自定义tableView将打开,但此表与已经存在的表混合textField....如果我添加了这个表UIView然后它不滚动......所以如何覆盖滚动视图textField和滚动表格textField......我已经声明了所有table delegates并且表格正确显示但出现滚动问题......

scrollview=[[UIScrollView alloc]initWithFrame:CGRectMake(0,60,320,540)];
[scrollview setContentSize:CGSizeMake(800,1500)];

scrollview.autoresizingMask = (UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight);
scrollview.autoresizesSubviews = YES;

scrollview.scrollEnabled = YES;
scrollview.delegate = self;
scrollview.directionalLockEnabled = YES;

scrollview.showsVerticalScrollIndicator = YES;

scrollview.showsHorizontalScrollIndicator = YES;

scrollview.autoresizesSubviews = YES;
scrollview.backgroundColor=[UIColor whiteColor];
[self.view addSubview:scrollview];

AdviseDr=[[UITextField alloc]initWithFrame:CGRectMake(150,110,140,30)];
AdviseDr.font = [UIFont boldSystemFontOfSize:15.0];
AdviseDr.borderStyle = UITextBorderStyleLine;
AdviseDr.clearButtonMode = UITextFieldViewModeWhileEditing; 
AdviseDr.delegate =self;
AdviseDr.tag=1;
[scrollview addSubview:AdviseDr];

table_AdviseDoctor=[[UITableView alloc]initwithframe:CGRectMake(150,200,170,200)style:UITableViewStylePlain];                                                        
table_AdviseDoctor.delegate=self;
table_AdviseDoctor.dataSource=self;
table_AdviseDoctor.layer.borderWidth = 2.0;
table_AdviseDoctor.layer.borderColor = [UIColor grayColor].CGColor;
[self.view addSubview:table_AdviseDoctor];
table_AdviseDoctor.hidden=YES;
Medicalfacility=[[UITextField alloc]initWithFrame:CGRectMake(150,150,170,30)];
Medicalfacility.font = [UIFont boldSystemFontOfSize:15.0];
Medicalfacility.borderStyle = UITextBorderStyleLine;
Medicalfacility.delegate =self;
Medicalfacility.tag=2;
[scrollview addSubview:Medicalfacility];
[Medicalfacility addTarget:self action:@selector(btnpress1:)forControlEvents:UIControlEventEditingDidBegin];
4

2 回答 2

0

更好的选择是,当您当时单击UITextField时也会隐藏您UITextField的 UITextField,因此您的 UITextField 不会与您的混淆,UITableView并且当您删除/隐藏UITableView时,您的隐藏UITextField再次取消隐藏(给隐藏 = NO)。否则有很多方法可以解决你的问题,我喜欢这个选项,所以我建议你。

其他选项是。

把你的 UITableView 放在 UIView 中,我希望你已经知道 UITableView 有自己的 ScrollView,所以你不需要放入/覆盖任何 scrollView。

当你点击UITextFiled那个时候,你也 UIScrollView设置了用户不能做的限制,UIScrollView并且(给 userInteraction = NO)。所以当你的 UITableView 隐藏时也给(给 userInteraction = YES) 。UITextField

于 2013-07-02T11:45:02.900 回答
0

UserInteraction 是正确的但是你知道当我们写这个 [self.view addsubview:Table_AdviseDoctor] 然后......当我们已经滚动然后点击文本字段然后我的表格从所需位置打开很长然后我们编写代码 UserInteraction.enable =否;然后滚动不能正常工作,但首先滚动然后单击文本文件然后..问题发生在不正确的位置.....

于 2013-07-03T04:36:23.700 回答