0

記事を表示するための UIWebView があります。これらはすべて HTML ページです。記事からテキストを選択する必要があります。そのため、選択オプションに UIMenucontroller を使用しています。ユーザーがシングルタップをタップしているときにテキストを選択する必要があります。しかし、singleTap を使用しても何も起こりません。

-(void)ViewDidLoad{

UITapGestureRecognizer *singletapp=[[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(singleTap:)];
    singletapp.numberOfTapsRequired=1;

    [wbCont addGestureRecognizer:singletapp];

}

シングルタップ:

-(void)singleTap:(UIGestureRecognizer *)gestureRecognizer
 {

     NSLog(@"single tap");

 CGPoint touchPoint = [gestureRecognizer locationInView:self.view];

 NSString *js = [NSString stringWithFormat:@"document.elementFromPoint(%f, %f).toString()", touchPoint.x, touchPoint.y];

 NSString * tagName = [wbCont stringByEvaluatingJavaScriptFromString:js];

 NSLog(@"Selected Name: %@",tagName);

 }
4

1 に答える 1

0

このコードをviewDidLoadに追加してください

[[NSNotificationCenter defaultCenter] addObserver:self
                                                 selector:@selector(resetMenuController)
                                                     name:UIMenuControllerDidHideMenuNotification
                                                   object:nil];

このコードをクラスに追加します。コントローラーは表示されません

- (void) resetMenuController
{
    UIMenuItem *notesMI = [[UIMenuItem alloc] initWithTitle: @""
                                                     action: @selector(sample)];

    [[UIMenuController sharedMenuController] setMenuItems:@[notesMI]];
}
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender
{
    if (action == @selector(sample))
    {
        return YES;
    }
    return NO;
}

- (void) sample{}
于 2013-10-15T06:41:30.227 に答える