IOS中 UIView和UIViewController的区别
展开全部
UITableViewController继承自UIViewController,但是initWithNibName:bundle:方法的行为是不一样的。普通的UIViewController如果nibName参数是nil,则自动载入和自己类名相同的xib文件。而UITableViewController遇到nibName为nil时,却不加载xib文件,而是创建一个空的table
view。所以,对于UITableViewController来说,如果使用了xib文件,则必须写出完整xib文件名,才能正确创建。
因此,当使用了xib时,UITableViewController不能使用这样的方式创建:
[[TableViewController alloc] init];
[[TableViewController alloc] initWithNibName:nil bundle:nil];
另外,UITableViewController的view属性和tableView属性是联动的,无法自己改变此种关联。就是说,UITableViewController的顶级view必须是一个tableView,没法自己在loadView中创建一个view,然后再加入一个tableView。所以,如果想自己控制页面的布局,必须继承自UIViewController,而不是UITableViewController。
view。所以,对于UITableViewController来说,如果使用了xib文件,则必须写出完整xib文件名,才能正确创建。
因此,当使用了xib时,UITableViewController不能使用这样的方式创建:
[[TableViewController alloc] init];
[[TableViewController alloc] initWithNibName:nil bundle:nil];
另外,UITableViewController的view属性和tableView属性是联动的,无法自己改变此种关联。就是说,UITableViewController的顶级view必须是一个tableView,没法自己在loadView中创建一个view,然后再加入一个tableView。所以,如果想自己控制页面的布局,必须继承自UIViewController,而不是UITableViewController。
Storm代理
2023-07-25 广告
2023-07-25 广告
StormProxies是一家可靠的代理服务提供商,提供原生IP(住宅原生IP)和高匿名代理服务。以下是关于StormProxies的原生IP服务的一些信息:1. 住宅原生IP:StormProxies提供的住宅原生IP是指从真实的家庭或企...
点击进入详情页
本回答由Storm代理提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询