UITextFieldからコピー&ペーストオプションをプログラム的に無効にする方法 質問する

UITextFieldからコピー&ペーストオプションをプログラム的に無効にする方法 質問する

ユーザーが登録番号を入力できる UITextField を含む登録アラートビューを作成しています。ほぼすべて揃っていますが、テキストフィールドの InterfaceBuilder バージョンがないため、テキストフィールドからコピー ペースト機能をプログラムで削除したいのですが、その方法がわかりません。

これまでの私の UIalertview は次のとおりです...

- (void)pleaseRegisterDevice {

    UIAlertView *myAlertView = [[UIAlertView alloc] initWithTitle:@"Please Register Device!" message:@"this gets covered" delegate:self cancelButtonTitle:nil otherButtonTitles:@"OK", nil];
    regTextField = [[UITextField alloc] initWithFrame:CGRectMake(12.0, 45.0, 260.0, 25.0)];
    [regTextField setBackgroundColor:[UIColor whiteColor]];
    regTextField.textAlignment = UITextAlignmentCenter;
    [myAlertView addSubview:regTextField];
    [myAlertView show];
    [myAlertView release];

}

ベストアンサー1

この投稿には多くの優れた解決策が記載されています。UITextView でコピー、切り取り、選択、すべて選択を無効にする方法

私のお気に入りはオーバーライドすることですcanPerformAction:withSender::

- (BOOL)canPerformAction:(SEL)action withSender:(id)sender
{
    if (action == @selector(paste:))
        return NO;
    return [super canPerformAction:action withSender:sender];
}

おすすめ記事