gpt4 book ai didi

iphone - Objective C - NSMutableArray 和 NSTableView 的问题

转载 作者:行者123 更新时间:2023-12-03 21:00:00 25 4
gpt4 key购买 nike

我有一个名为 Person 的类,该类中有 PersonName 属性(以及其他属性)。

MutableArray MyUserInfoArr 包含许多 Person 对象。

我想在 TableView 的单元格中列出每个 PersonName?我该怎么做呢?提前致谢。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 
{

static NSString *CellIdentifier = @"Cell";
Person *myPerson;
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil)
{
cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:CellIdentifier] autorelease];
}

NSString *cellValue = [myUserInfoArr objectAtIndex:indexPath.row];
cell.text = cellValue;
<小时/>
if (cell == nil) 
{
cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:CellIdentifier] autorelease];
Person *myPerson = [myUserInfoArr objectAtIndex:indexPath.row];
cell.textLabel.text = myPerson.DisplayName;
NSLog(@"abc %i",indexPath.section);
}

这是我的代码,它运行了,但它只返回 myUserInfoArr 中最后一个对象 Person 的属性 Person.DisplayName 。如何解决?

最佳答案

最简单的方法是设置文本:

Person *person = [MyUserInfoArr objectAtIndex:[indexPath indexAtPosition:1]];
cell.textLabel.text = person.PersonName;

indexPath 包含两个索引,第一个是节索引,第二个是节内项目的索引。因此,我假设在您的情况下您只有一个部分,这就是为什么与 indexAtPosition:0 无关的原因。

您还必须设置表的数据源方法,这些方法告诉您的 TableView 应显示多少个部分/行:

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
return 1;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return [MyUserInfoArr count];
}

关于iphone - Objective C - NSMutableArray 和 NSTableView 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1605956/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com