0

シミュレーターでは問題なく UIMenucontroller が表示されますが、iOS 4+ を実行しているデバイスでのテストでは表示されません。IB を使用して追加された標準の uitextview です。

これらのメソッドをデリゲートであるビューコントローラーに追加しましたが、標準のメニューコントローラー、選択、コピーなどが必要なため、必要ではないと思います。それらが呼び出されていないことは言うまでもありません。

助けてくれてありがとう

- (BOOL)canPerformAction:(SEL)action withSender:(id)sender {

    NSLog(@"Can perform action called");

    BOOL answer = NO;

    if (action == @selector(copy:))
    {
        answer = YES;
    }
    if (action == @selector(cut:))
    {
        answer = YES;     
    }
    if (action == @selector(paste:))
    {
        answer = YES;
    }
    if (action == @selector(select:))
    {
        answer = YES;
    }
   if (action == @selector(selectAll:))
    {
        answer = YES;
    }

    return answer;
}

- (BOOL) canBecomeFirstResponder {
    NSLog(@"can become first called");
    return YES;
}
4

1 に答える 1

1

ジェスチャ レコグナイザを追加するか、touchesEnded:withEvent: メソッドをオーバーライドして、メニュー コントローラを表示する必要があります。

//Assumes you assigned a CGRect for where the menu should appear to theRect
UIMenuController *mc = [UIMenuController sharedMenuController];
[mc setTargetRect:theRect inView:self];
[mc setMenuVisible:YES animated:YES];

-copy、-cut、-paste などのメソッドもオーバーライドする必要があります。

于 2011-07-06T21:09:09.987 に答える