将 UITextView 放在 UITableView 页脚中
Posted
技术标签:
【中文标题】将 UITextView 放在 UITableView 页脚中【英文标题】:Placing UITextView inside a UITableView footer 【发布时间】:2009-10-16 11:57:01 【问题描述】:我有一个带有页脚视图的 UITableView。此页脚视图包含一个 UITextView 作为子视图。表格视图和页脚视图都是以编程方式创建的。文本视图正确显示在屏幕上,但它不显示任何文本,也不响应触摸事件。
这个问题可能与 UITextView 是 UIScrollView 的子类有关吗?还是我刚刚在文本视图的初始化中遗漏了什么?
我初始化页脚和文本视图的代码如下所示:
// Create the footer
UIView *tempFooter = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 200)];
[tempFooter setAutoresizingMask:UIViewAutoresizingFlexibleHeight|UIViewAutoresizingFlexibleWidth];
[tempFooter setBackgroundColor:[UIColor groupTableViewBackgroundColor]];
self.tableFooterView = tempFooter;
[tempFooter release];
UITextView *tempTextView = [[UITextView alloc] initWithFrame:CGRectMake(5, 5, 270, 140)];
[tempTextView setDelegate:self];
[tempTextView setEditable:YES];
tempTextView.keyboardType = UIKeyboardTypeDefault;
tempTextView.returnKeyType = UIReturnKeyDone;
self.textView = tempTextView;
[tempTextView release];
[self.tableFooterView addSubView:self.textView];
【问题讨论】:
【参考方案1】:我最近碰到一个类似的问题,发现一些输入元素的superview(A UIScrollView)的contentSize太小了。内容会显示(clipsToBounds = NO),但不会检测到触摸。
您是否检查过您的实际表格是否足够高以容纳其页脚视图?
【讨论】:
表格视图可以通过触摸文本字段内部并向上或向下拖动来滚动。这应该意味着 contentsize 足够大,可以包含 textview,对吧? 嗯,我会这么说。奇怪,我刚刚将您的代码复制到我的一个项目中,它可以正常工作,显示一个文本输入字段,并且键盘在触摸时向上滑动。 感谢您抽出宝贵时间调查此事。从那以后,我决定以不同的方式构建我的 UI,以避免这个问题。以上是关于将 UITextView 放在 UITableView 页脚中的主要内容,如果未能解决你的问题,请参考以下文章
UITextView 背景图像不适合 UITextView 框架的框架大小