- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在viewcontrolller.m中设置了一个NSMutableArray
barcodeArray = [[NSMutableArray alloc] init];
在viewcontroller.h中像这样:
@interface SecondViewController : UIViewController <UITableViewDelegate, UITableViewDataSource> {
NSString *string;
NSString *barcode;
NSArray *array;
NSMutableArray *barcodeArray;
}
然后我添加一个像这样的对象:
if ([barcodeArray indexOfObject:barcode] != NSNotFound) {
NSLog(@"%@",barcode);
NSLog(@"object zit er al in");
}
else {
[barcodeArray addObject:barcode];
[_tableView reloadData];
NSLog(@"%@",barcodeArray);
NSLog(@"object zit er nog niet in");
}
当我设置 numberOfRowsInSection 返回 [barcodeArray count] 时;函数 cellForRowAtIndexPath 未被调用。就像条形码数组计数为空一样。
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return [barcodeArray count];
}
当我设置 numberofRowsinSection 返回 1 时;只是为了测试..我得到一个带有(null)的单元格:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
NSLog(@"aangeroepen");
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
}
// Set up the cell...
cell.textLabel.text = [NSString stringWithFormat:@"%@",[barcodeArray objectAtIndex:indexPath.row]];
NSLog(@"%@", cell.textLabel.text);
return cell;
}
这是我的日志:
2013-01-17 07:57:04.139 Scanner[21865:c07] (
123456
) **// NSMutableArray when i add the barcode**
2013-01-17 07:57:04.140 Scanner[21865:c07] object zit er nog niet in
2013-01-17 07:57:05.485 Scanner[21865:c07] viewdidload
2013-01-17 07:57:05.488 Scanner[21865:c07] aangeroepen
2013-01-17 07:57:05.489 Scanner[21865:c07] (null) **// NSMutableArray in cell.textLabel.text**
编辑:
cell.textLabel.text = [NSString stringWithFormat:@"%@",[barcodeArray objectAtIndex:indexPath.row]];
NSLog(@"celltext:%@", cell.textLabel.text);
NSLog(@"barcodearray%@", [barcodeArray objectAtIndex:indexPath.row]);
NSLog(@"objectatindex:0:%@", [barcodeArray objectAtIndex:0]);
NSLog(@"indexpath.row:%d", indexPath.row);
Log:
2013-01-17 08:27:28.838 Scanner[21978:c07] celltext:(null)
2013-01-17 08:27:28.839 Scanner[21978:c07] barcodearray(null)
2013-01-17 08:27:28.839 Scanner[21978:c07] objectatindex:0:(null)
2013-01-17 08:27:28.839 Scanner[21978:c07] indexpath.row:0
最佳答案
我有一种非常强烈的感觉,您的 barcodeArray
在您的方法中仅具有本地范围if/else 语句。我认为您需要保留 barcodeArray
,因为它在您的其他方法中为 null。
您可以在 numberOfRowsInSection
委托(delegate)方法中执行 NSLog(@"%d", [barcodeArray count]);
并显示打印内容吗?这将有助于确认分配和保留数组的方式是否存在问题。如果这就是问题所在......那么在你的头文件中,你会写,
@property (strong, nonatomic) NSMutableArray*barcodeArray;
在你的实现文件中,你可以写`@synthesizebarcodeArray = _barcodeArray;
然后,你会这样做,self.barcodeArray = [NSMutableArray alloc] init];
在任何使用 barcodeArray
的地方,请在其前面添加 self。通过保留该对象(使用头文件中的属性...retain = Strong),您现在可以在整个类中访问它。在您的 cellForRowAtIndexPath
和 numberOfRows
方法中,它不应该再为 null。
编辑:
在你的代码中,你正在做
[barcodeArray addObject:barcode];
这应该是
[self.barcodeArray addObject:barcode];
代码中的任何地方都不应该有 barcodeArray
- 你应该只具有 self.barcodeArray
。
关于ios - numberOfRowsInSection 和 cellForRowAtIndexPath 的 2 个问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14373816/
我正在为我的应用程序使用 RxSwift,RxCocoa ,并实现了tableView。 当它从tableModel的viewModel获取priceData时,它显示了priceData的完整列表。
我已经在 swift 中设置了 tableview 的 delegate 和 datasource ,节数返回正确的值,但 numberOfRowsInSection 始终返回 4。所以我有两个问题
我有 6 个 NSMutableArray(monday,tuesday...saturday),我将其添加到 NSMutableArray“day”我在这个方法中做“numberOfRowsInSe
我正在尝试设置此分段表以在不同部分中显示不同的 JSON 数组,但出于某种原因,如果我在第一部分之后的任何部分中有更大的行数,我会得到 [__NSArrayM objectAtIndex:]: ind
我有一个使用 AFNetworking 加载数据的应用程序,解析收入 JSON 数据并填充表。我使用不同的类来管理 JSON 并填充 UITableView。 我需要正确设置行数。问题是,我猜它的方法
当第一次调用以下数据源时 - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView { return self.fir
我正在从手机的音乐库中获取音乐专辑。我想将专辑分成几个部分(专辑封面作为部分标题图像),然后专辑歌曲将填充每个部分表。 我知道如何获取一组专辑,这些专辑将用于 numberOfSectionsInTa
我有三个数据(日期、 View 、文本字段)。我使用 SQLite(FMDB)。并且,它输出到 TableView 。当您运行此代码时,所有部分都会输出相同的单元格。我想在每个日期的文本字段和单元格中
我有一个 iphone 应用程序,它从作为 rss 提要的 xml 文件中读取“类别”字段。我的应用程序的工作方式是它按 xml“类别”字段中的类别在表格 View 中显示 rss 提要的内容。 我对
我在我的 View Controller 中设置了一个 UITableView,用于填充函数返回的 JSON 数据。当我加载 MatchCenterViewController 时,应用程序崩溃并且我
我正在从 appcoda 开发一个简单的表格应用程序。我对 numberOfRowsInSection 方法感到困惑。当我在 numberOfRowsInSection 方法中使用 NSLog 在控制
我得到了一个 nil,我不知道为什么。每次我选择 tableViewController1 并执行 segue 时,它都会崩溃并将错误发送给我 tableViewController2。我设置标识
我按以下方式设置 TableView DataSource: MyTable.dataSource = ViewController 使用实现协议(protocol)UITableViewDataSo
在 Swift 2 中,开发一个 UITableView,它将根据字典的内容动态创建单元格。该词典有 38 个词条。当我在属性检查器中手动将 TableView 部分设置为 38 行时,一切都按预期工
我真的需要帮助,因为我是 Swift 的新手。我遇到一个问题,我找不到返回 numberOfRowsInSection 的方法 场景: 我从 sectionArray 返回的 TableView 中有
我在尝试运行我的应用程序时不断遇到此问题。编译成功: GNU gdb 6.3.50-20050815 (Apple version gdb-1518) (Thu Jan 27 08:30:35
大家好,这是我的第一篇文章。我试图在 TableView 中显示动态数据: 我在 Dictionary 中有数据像这样var dizionarioComuni : Dictionary> = [:]对
数据已填充,但是[tableView numberOfRowsInSection:0]始终返回0。我的表中只有一部分。哪些类型的事物会导致此行为? 最佳答案 如果表中始终只有一个部分,请遵循以下命令.
我在 storybord 和 UISegmentedControl 中有一个 tableView 来用不同的数据和不同的设计填充上面提到的表格。我的问题是 numberOfRowsInSection
在我的 iOS 应用程序中,我有一个 SQLite 数据库,其中有一个包含许多行的 items 表。我避免将所有项目加载到内存中,而是仅加载当前显示在 UITableView 中的项目。 我正在使用S
我是一名优秀的程序员,十分优秀!