UITableViewController在swift中的UI问题

时间:2014-08-10 17:14:42

标签: ios uitableview swift

我正在使用Parse为我的应用设置登录系统。当用户登录时,他们将被带到TableViewController,其中有不同的选项可供选择。出于某种原因,TableView通过状态栏一直向上,并且看起来不太好。另外,在我的代码中设置了TableView的标题,但该标题没有显示出来。以下是TableViewController的属性

这是状态栏,标题应该是。

如何解决问题?

2 个答案:

答案 0 :(得分:1)

听起来你想在你的视图上面有一个UINavigationBar。这很容易做到!

无论您身在何处/显示您的TableViewController(现在可能看起来像这样)

MYTableViewController *vc = [[MYTableViewController alloc] initWithNibName:nil bundle:nil];
[self presentViewController:vc];

而是执行以下操作:(在此处编写类名称)

MYTableViewController *vc = [[MYTableViewController alloc] initWithNibName:nil bundle:nil];
UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:vc];
[self presentViewController:navController];

或者,如果您使用Storyboard来展示您的VC(看起来您至少在​​某些部分使用了故事板)

只需拖动一个Navigation Controller对象,然后重新路由它带来的ViewController

哦是的,'Title'属性主要用于UITabBarController容器。当您使用导航控制器进行设置时,您可以通过设置

来设置标题
self.navigationItem.title = @"Test"

或在Nib中选择新出现的导航栏并更改标题属性;如果你采用笔尖方法,你会看到它。

答案 1 :(得分:1)

我认为你应该为tableview设置一些约束。

为了清楚说明,我创建了一个只包含一个viewController的小项目,它有一个tableview作为子视图。之后,我附上tableView一些约束条件按照以下步骤:

1.在故事板中选择tableview;
2.在菜单中单击编辑器 - >图钉;
3.选择“超级视图的领先空间”,“超级视图的跟踪空间”,“超级视图的顶级空间”,“超级视图的底部空间”
4.打开实用程序区域并选择“显示大小检查器”。编辑约束以确保“超级视图的顶部空间”的值等于20(因为20个点是状态栏的高度),而其他三个约束的值等于0。 完成这些操作后,您将创建一个位于状态栏下20点的tableview。

我认为发布一些图片会好得多,但我是stackflow的新手,所以我没有获得足够的声誉来发布图片,对不起。