在開發(fā)過程中遇到在粘貼文本信息之后需要執(zhí)行附加的事件,所以這就有必要監(jiān)聽粘貼事件,在執(zhí)行完粘貼事件之后再執(zhí)行自己的附加事件。
其實(shí)UITextfild和UITextView的控件都有默認(rèn)系統(tǒng)自帶的粘貼、拷貝等選項(xiàng),其實(shí)系統(tǒng)彈出的粘貼的控件是封裝的一個(gè)UIMenuController(是個(gè)單例)這是一個(gè)比較簡單的類跟磨,自己可以進(jìn)去查看。下邊直接說代碼:
?[[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(posted:) name:UIMenuControllerDidHideMenuNotification object:nil];
- (void)posted:(NSNotification*)s{
? ? if(_textField.text.length>0) {
? ? ? ? NSURL*url =[NSURLURLWithString:_textField.text];
? ? ? ? NSURLRequest*request =[[NSURLRequestalloc]initWithURL:url];
? ? ? ? [_webViewloadRequest:request];
? ?}
}
看見主要在他的幾個(gè)通知里面:
所以對于粘貼等事件的監(jiān)聽完全可以靠這幾個(gè)通知來監(jiān)聽攒盈!
有興趣的可以再深入研究它的主要屬性:UIMenuItem抵拘,其實(shí)對于圖中的這些操作的item的信息都在UIMenuItem中