隐藏或显示表格视图
Posted
技术标签:
【中文标题】隐藏或显示表格视图【英文标题】:hide or show tableview 【发布时间】:2012-07-15 07:26:08 【问题描述】:假设我在它下面有一个开关和一个小表格视图(无滚动)。我知道开关是否使用bool switchState
打开/关闭,其值在开关的操作方法中发生了变化:
-(IBAction)switchSlide:(id)sender
if (toggleSwitch.on == YES)
switchState = YES;
else
switchState = NO;
现在我想要的是它下面的表格视图应该在switchState == NO
时隐藏。我该怎么做?
【问题讨论】:
【参考方案1】:每个UIView
都有一个属性hidden
:
@property(nonatomic, getter=isHidden) BOOL hidden
因为UITableView
是UIView
的子类,您也可以使用UIView
中的方法。
因此,您的代码只需要稍作调整(假设您在 UITableViewController
中调用此 IBAction
):
-(IBAction)switchSlide:(id)sender
if (toggleSwitch.on == YES)
switchState = YES;
self.tableView.hidden = NO;
else
switchState = NO;
self.tableView.hidden = YES;
编辑:
通过聊天解决了这个问题,解决方案是:
由于您使用了UIViewController
,因此您必须为UITableView
创建一个属性。合成它并通过从文件所有者拖动到界面构建器中的UITableView
来连接出口。现在你可以使用上面的代码了。
【讨论】:
我从笔尖创建了 tableView。self.tableView.hidden = NO;
或 yes 给出一个错误,基本上是说在视图控制器中找不到 tableView
。
您使用的是UITableViewController
还是只是UIViewController
?
UITableViewController
。将tableview拖入nib并调整连接后,我使用方法:- (UITableViewCell *)tableView:cellForRowAtIndexPath:
将单独的行添加到table view中。
每个UITableViewController
都有一个属性tableView
。你确定没有错字?
tableView
的作用域不是仅限于我上面评论中提到的方法吗?以上是关于隐藏或显示表格视图的主要内容,如果未能解决你的问题,请参考以下文章