Ela*_*hmi 1 iphone cocoa-touch objective-c uitabbarcontroller uitableview
这可能是正常的,但我是Objective-c的新手.我有一个带有两个视图控制器的应用程序,都是表视图.单击一行时,我将第二个视图加载到堆栈的顶部,并通过其中一个属性传递参数.在第一个视图(默认由导航控制器加载)上,首先调用viewDidAppear函数,它从URL打开XML文件,为每个节点构建一个对象,并将所有对象推送到一个数组中.完成此操作后,将调用numberOfRowsInSection并返回数组的计数,一切正常.在另一个视图中,首先加载它后调用numberOfRowsInSection然后调用viewDidAppear.我是iphone的新手,我不知道为什么会发生这种情况.
谢谢!
这个是正常的.viewDidAppear在整个视图完成加载并变得可见之后调用.这包括UITableView.表视图又需要numberOfRowsInSection初始化函数.
在UITableView加载之前,您有三个选项来执行代码:
1)将代码放入-viewWillAppear- 这有时可能会不稳定
2)UIViewController的子类(很可能你已经这样做了)并创建一个自定义-init函数来处理你的设置
3)将初始化代码放入其中-numberofRowsInSection.这始终是第一个UITableViewDataSource被调用的方法.这是hackish但在实践中非常好.
| 归档时间: |
|
| 查看次数: |
2669 次 |
| 最近记录: |