首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >UITableViewCellIdentifier的静态NSString

UITableViewCellIdentifier的静态NSString
EN

Stack Overflow用户
提问于 2012-07-07 04:39:04
回答 1查看 122关注 0票数 0

我正在看一些代码,想知道这是如何工作的。在一节课上,我看到了类似这样的东西:

代码语言:javascript
运行
复制
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    static NSString *simpleCellIdentifier = @"SimpleCellIdentifier";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"SimpleCellIdentifier"];
....
return cell
}

然后在另一个类中,我将看到与股票UITableViewCells相同的代码片段。我想知道发生了什么事

代码语言:javascript
运行
复制
static NSString *simpleCellIdentifier;

因为它是静态的,所以会在项目的整个生命周期内进行分配,对吧?那么,如果运行另一个viewController中的代码,会发生什么呢?它只是使用在另一个类中创建的旧simpleCellIdentifier吗?谢谢。

EN

Stack Overflow用户

回答已采纳

发布于 2012-07-07 04:47:24

在这种情况下,simpleCellIdentifier只存在于方法范围内。因此,在不同的方法中可以有任意多的simpleCellIdentifier,因为它们是不同的实例。

如果在类范围内声明了static变量,则无论何时在该类中读/写该变量,都是在使用同一个实例。

票数 3
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11369376

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档