【问题标题】:Should I use self.tableView or just tableView by itself? [duplicate]我应该使用 self.tableView 还是单独使用 tableView? [复制]
【发布时间】:2012-12-13 12:07:45
【问题描述】:

可能重复:
Difference beetween _ and self. in Objective-C

我应该使用 self.tableView 还是单独使用 tableView。

在我的代码中,我注意到两者都

[self.view addSubview:self.tableView];

[self.view addSubview:tableView];

两者都有效。我的 tableView 添加了 IB,并且设置了委托和数据源和出口。

谢谢

【问题讨论】:

  • thai bhai thai avu mare pn 1 var thayu hatu :(
  • 当您执行 self.tableView 时,在幕后发生的是正在调用 [self getTableView]。因此,尽管在 99% 的情况下,你得到了你想要的,但在某些情况下,getProperty 实现也可能会做一些额外的事情。基本上就是访问属性和变量的区别。

标签: iphone objective-c ios uitableview


【解决方案1】:

如果你声明你的表而不是让它的属性像

IBOutlet UITableView *table;  

然后你可以访问你的tableView

[self.view addSubView:tableView];

如果您正在设置它的 getter 和 setter 属性,那么您可以使用 self.table 调用

@property(nonatomic,retain)IBOutlet UITableView *table;  

然后你就可以通过

 [self.view addSubView:self.table];  

更多信息你可以阅读UITableViewController Class Reference

【讨论】:

    【解决方案2】:

    只是添加到上面的答案

    如果你的表是一个属性,那么最好总是使用

    [self.view addSubview:self.tableView];
    

    这样做的一个优点是,当合成为属性时,会为其生成访问器,而在另一种方法中则不会发生这种情况。如果属性设置为保留,则保留和释放将由访问者完成。

    根据个人经验,我建议您至少可以避免内存访问违规。

    【讨论】:

      猜你喜欢
      • 2013-01-30
      • 2011-08-08
      • 2020-08-23
      • 2019-08-06
      • 2013-07-12
      • 1970-01-01
      • 1970-01-01
      • 2013-03-25
      • 1970-01-01
      相关资源
      最近更新 更多