在iOS中控件本身帶有文本復(fù)制效果的只有UITextField、UITextView爱葵、UIWebView.但是特殊情況下我們在使用UILabal展示文本的時候想要擁有文本復(fù)制的功能該怎么辦呢?下面給大家介紹一種在Label上添加文本復(fù)制的方法清焕。
首先要重寫UILabel這個類灸眼,在它的init方法里面添加一個長按的手勢,如下所示:
UILongPressGestureRecognizer * longPressGr = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(handleTap:)];
longPressGr.minimumPressDuration = 1.0;
[self addGestureRecognizer:longPressGr];
我給它設(shè)置的長按時間為1s,所以當你長按1s之后就會調(diào)用長按手勢的方法克懊。最重要的一步來了忱辅,你需要在這個方法里面去進行賦值七蜘,如下所示:
UIPasteboard *pboard = [UIPasteboard generalPasteboard];
pboard.string = self.text;
經(jīng)過以上這兩步,我們就可以給UILabel添加一個賦值文本的效果墙懂。實現(xiàn)起來比較簡單崔梗,希望大家玩的開心。