这就是我到目前为止......
func rightButtonItemsInRevealTableViewCell(revealTableViewCell: SWRevealTableViewCell!, handler:((Bool) -> (NSArray))!) {
var item1: SWCellButtonItem = itemWithTitle("Delete", {
(var success) in
println("\(success)")
}
});
item1.backgroundColor = UIColor.redColor();
item1.tintColor = UIColor.whiteColor();
item1.width = 75;
return item1;
}
我发现this有点帮助,但我仍然遇到一些错误。
这是原始的Objective-C代码......
- (NSArray*)rightButtonItemsInRevealTableViewCell:(SWRevealTableViewCell *)revealTableViewCell {
SWCellButtonItem *item1 = [SWCellButtonItem itemWithTitle:@"Delete" handler:^(SWCellButtonItem *item, SWRevealTableViewCell *cell)
{
NSLog( @"Delete");
}];
item1.backgroundColor = [UIColor redColor];
item1.tintColor = [UIColor whiteColor];
item1.width = 75;
return @[item1];
}
这是在标题声明
中+ (instancetype)itemWithTitle:(NSString*)title handler:(BOOL(^)(SWCellButtonItem *item, SWRevealTableViewCell* cell))handler;
和.m文件中的定义
+ (instancetype)itemWithTitle:(NSString *)title handler:(BOOL(^)(SWCellButtonItem *, SWRevealTableViewCell *))handler
{
return [[SWCellButtonItem alloc] initWithTitle:title image:nil handler:handler];
}
答案 0 :(得分:0)
func rightButtonItemsInRevealTableViewCell(revealTableViewCell : UITableViewCell) -> NSArray {
var item1 : SWCellButtonItem = SWCellButtonItem("Delete", handler: ((item : SWCellButtonItem, cell : SWRevealTableViewCell) -> (Void) in {
NSLog("delete")
}))
item1.backgroundColor = UIColor.redColor()
item1.tintColor = UIColor.whiteColor()
item1.width = 75
return [item1];
}
我希望我没有忘记任何事情,试试看!
答案 1 :(得分:0)
正确的解决方案是
let item : SWCellButtonItem = SWCellButtonItem(title:"Delete", handler:{(item:SWCellButtonItem!, cell:SWRevealTableViewCell!)->(Bool) in
println("Delete handler")
return false
} )