0

UITextField の「貼り付け」オプションを無効にしたいのですが、UITextField のデリゲート クラスで、次の実装を提供しています。

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

NSObject(UIResponderStandardEditActions)次のアクションを定義し、canPerformAction例外を除いてすべて送信されますpaste:

@interface NSObject(UIResponderStandardEditActions)   // these methods are not implemented in NSObject

- (void)cut:(id)sender __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_3_0);
- (void)copy:(id)sender __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_3_0);
- (void)paste:(id)sender __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_3_0);
- (void)select:(id)sender __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_3_0);
- (void)selectAll:(id)sender __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_3_0);
- (void)delete:(id)sender __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_3_2);
- (void)makeTextWritingDirectionLeftToRight:(id)sender __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_5_0);
- (void)makeTextWritingDirectionRightToLeft:(id)sender __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_5_0);

@end

現在、クリップボードにコンテンツがあり、UITextField にフォーカスすると、「貼り付け」メニューが表示されます。

貼り付けメッセージを受け取るために他にすべきことはありますか?

4

1 に答える 1

1

のサブクラスを作成してそこUITextFieldをオーバーライドすると、アクションはではなく で呼び出されますcanPerformpaste:UITextFielddelegate

于 2015-03-17T13:23:07.377 に答える