我的IB图片:
1.我从tablevIEwcontroller的单元格拖动到另一个视图,然后选择Accessory Action – >推
当我运行我的项目我得到错误:
[ setValue:forUndefinedKey:]: this class is not key value Coding-compliant for the key accessoryActionSegueTemplate
我认为这可能是重复使用单元格标识符错误。
我的cellForRowAtIndexPath:方法:
static Nsstring *CellIDentifIEr = @"champion cell";UItableVIEwCell *cell = [tableVIEw dequeueReusableCellWithIDentifIEr:CellIDentifIEr];Nsstring *celliconname = ((championList *)[self.champions objectAtIndex:indexPath.row]).championImage;UIImage *cellicon = [UIImage imagenamed:celliconname];[[cell imageVIEw] setimage:cellicon];cell.imageVIEw.frame = CGRectMake(0.0f,0.0f,70.0f,70.0f);cell.imageVIEw.layer.cornerRadius = 7;[cell.imageVIEw.layer setMasksToBounds:YES];cell.textLabel.text = ((championList *) [self.champions objectAtIndex:indexPath.row]).championname;cell.detailTextLabel.text = ((championList *) [self.champions objectAtIndex:indexPath.row]).championID;return cell;
我可以使用performSegueWithIDentifIEr:方法来解决这个问题,但是我想知道为什么我在IB中遇到了附件动作问题。
解决方法 当我将ctrl从原型单元格的细节附件按钮拖到下一个视图控制器时,我遇到了这个问题。所以相反,我从表视图控制器本身做了拖动,并添加了一些代码。Objective-C的:
- (voID)tableVIEw:(UItableVIEw *)tableVIEw accessorybuttonTappedForRowWithIndexPath:(NSIndexPath *)indexPath{ [self performSegueWithIDentifIEr: @"EditUser" sender: [tableVIEw cellForRowAtIndexPath: indexPath]];}
Swift 3.0:
func tableVIEw(_ tableVIEw: UItableVIEw,accessorybuttonTappedForRowWith indexPath: IndexPath) { performSegue(withIDentifIEr: "EditUser",sender: tableVIEw.cellForRow(at: indexPath))}
这适用于iOS 5.0 – 10.x
总结以上是内存溢出为你收集整理的iphone – 附件动作segue(UITableViewController)全部内容,希望文章能够帮你解决iphone – 附件动作segue(UITableViewController)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)