UITableViewCell as Button

时间:2014-04-24 16:35:22

标签: ios objective-c uitableview

我正在使用UITableViewCell来显示UIActivityViewController,但问题是,一旦我点击了单元格,UIActivityViewController就不会出现,直到我点击其他单元格3次或直到我单击一个显示另一个ViewController的单元格,这里是它出现但在新的ViewController中,我希望它在单元格所在的ViewController中。

我要展示的单元格UIActivityViewController位于TableViewController

以下是我正在使用的代码:

- (void) tableView:(UITableView *)tableView didDeselectRowAtIndexPath:(NSIndexPath *)indexPath{
    if ([indexPath isEqual:[tableView indexPathForCell:self.shareCell]]) {
    NSString *shareText = [NSString stringWithFormat:@"Text to share"];
    NSArray *shareObject = @[shareText];
    UIActivityViewController *activityViewController = [[UIActivityViewController alloc] initWithActivityItems:shareObject applicationActivities:nil];
    [self presentViewController:activityViewController animated:YES completion:nil];
}

}

我在.m中实现的.h文件中IBOutlet UITableViewCell

提前谢谢!

1 个答案:

答案 0 :(得分:4)

你正在呼唤错误的方法。当取消选择单元格时会调用此方法

- (void) tableView:(UITableView *)tableView didDeselectRowAtIndexPath:(NSIndexPath *)indexPath

请改用:

- (void) tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath