我正在开发iPhone应用程序,我创建了一个视图控制器,其中包含一个按钮和tableViewController,必须显示数据形式sqlite3,我正在使用xcode 3.4
我想在viewController中打开TableViewController的按钮,当我尝试打开那个没有按钮的表时我会去故事板并将原始文件放在TableViewController上并正常加载sqlite的数据
但是当我把raw放在viewController上并将按钮连接到TableViewController并建立连接模式然后运行..当我按下按钮时,它给出了以下异常:
NSInvalidArgumentException', reason: '-[NSIndexPath isEqualToString:]: unrecognized selector sent to instance ...
,异常是指(cellForRowAtIndexPath
)
这是我的代码:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:CellIdentifier] autorelease];
}
Books *temp= (Books *)[self.books objectAtIndex:indexPath.row];
// [cell setText:temp.bo_name];
[cell setText:[NSString stringWithFormat:@"%d - %@ - %d - %d - %d - %d - %@ - %f - %f - %@ - %f - %d - %@ - %d",temp.bo_id, temp.bo_name, temp.bo_au_id, temp.bo_pub_id, temp.bo_num_pages, temp.bo_publish_year, temp.bo_about, temp.bo_price, temp.bo_currency, temp.bo_cover_img, temp.bo_recomended, temp.bo_sec_id, temp.bo_path, temp.bo_sort]];
return cell;
}
修改以添加我的答案评论中指定的实例变量的类型 - JeremyP。
int bo_id;
NSString *bo_name;
int bo_au_id;
int bo_pub_id;
int bo_num_pages;
int bo_publish_year;
NSString *bo_about;
double bo_price;
double bo_currency;
NSString *bo_cover_img;
double bo_recomended;
int bo_sec_id;
NSString *bo_path;
int bo_sort;
答案 0 :(得分:1)
setText
已弃用。而不是[cell setText:[NSString stringWithFormat:@"%d...
,请尝试
cell.textLabel.text =[NSString stringWithFormat:@"%d...
错误可能在%d - %@ - %d - %d - %d - %d - %@ - %f - %f - %@ - %f - %d - %@ - %d
长度的某处导致参数不匹配(NSInvalidArgumentException
)。仔细浏览列表以找出错误。如果不了解各个元素的数据类型,很难说清楚。
答案 1 :(得分:0)
不可能肯定地说出问题是什么,但几乎可以肯定的是,stringWithFormat:
中的参数与其格式说明符之间存在不匹配。
检查所有与%d
相对应的内容实际上是整数,而不是长整数或短整数。检查指定为%@的内容是否真的是对象指针。此外,如果您在此处使用的任何课程中覆盖了-description
,请确保您没有犯错。
将-isEqualToString:
发送到NSIndexSet
会导致实际错误,因此您可能会偶然在某处将NSIndexSet
视为字符串。