选择 UITableViewCell 时 UITabBar 消失
Posted
技术标签:
【中文标题】选择 UITableViewCell 时 UITabBar 消失【英文标题】:UITabBar disappears when selecting UITableViewCell 【发布时间】:2012-09-05 08:28:11 【问题描述】:我有一个 UITableView,其中有一个名为“Sunset”的单元格。按下 UITableViewCell 后,视图会切换到“infoView”,它会从 .txt 文件中加载一些文本。当按下“返回”按钮时,视图切换回 UITableView,但出现了问题。加载视图后,UITabBar 不见了!既然已经消失了,就不可能再回到另一个视图了。
我试过了:
self.hidesBottomBarWhenPushed = NO;
代码:
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
[tableView deselectRowAtIndexPath:indexPath animated:YES];
UITableViewCell *cellSelected = [tableView cellForRowAtIndexPath:indexPath];
NSString *cellTitle = cellSelected.textLabel.text;
if (cellTitle == @"Sunrise")
//Swap views
informationView *iv = [[informationView alloc] initWithNibName:nil bundle:nil];
[self presentModalViewController:iv animated:YES];
【问题讨论】:
让我们看看 didSelectRowAtIndexPath 中的代码以及创建 tableView 的位置 始终编辑您的原始问题以添加代码,而不是添加评论... 【参考方案1】:当然标签栏不显示。您正在模态地呈现第二个视图。如果你想保留这个实现,你将不得不在第二个视图上添加一个按钮或其他东西来执行
[self.navigationController dismissModalViewControllerAnimated:YES]; //Programatically dismiss the view controller
如果你想保留tabBar和导航栏的功能,你应该使用
[self.navigationController pushViewController:iv animated:YES];
而不是
[self presentModalViewController:iv animated:YES];
【讨论】:
以上是关于选择 UITableViewCell 时 UITabBar 消失的主要内容,如果未能解决你的问题,请参考以下文章
使用 AutoLayout 将 UIView 隐藏在单元格内时,不适合 UITableViewCell 高度
在 UITableviewCell 中使用 UICollection 视图时未调用 UICollectionView 委托方法“didSelectItemAtIndexPath”