在iOS系统中,用户可以剪切、复制文本、图像或其他数据,然后将其从粘贴板上转移到应用程序的其他地方。UIKit框架为这一系列的操作提供了类和协议,帮助我们进行内容的转移。
1.UIPasteboard
一个粘贴板的类,用于帮助在应用内和应用间进行数据共享。如果要与其他应用程序共享数据,我们应使用系统范围的通用粘贴板;如果用于与团队中多个应用程序间共享数据,则应使用团队ID命名的粘贴板进行共享。在一般使用中,当用户请求对用户界面中的选择进行剪切或复制操作时,应用程序中的对象会将数据写入粘贴板,然后相同或不同应用程序中的另一个实例将从粘贴板读取该数据并在新位置将其呈现给用户,这通常发生在用户请求粘贴操作时。
2.UIMenuController
一个用于展示剪切、复制、粘贴、选择、全选和删除操作按钮的菜单控制器。要注意的是,它是一个单例,也就是说一个应用中这个类型的实例只有一个。当我们需要展示一个菜单时,通过它就可以将其展示在指定位置。除了下述UIResponderStandardEditActions协议可以指定菜单控制器的展示菜单以外,其自身的menuItems属性也可以为其增加新的选项按钮。
3.UIResponder
响应者的基类,在之前的小节已经介绍过。这里要注意如下方法:
这个方法根据当前的上下文来判断哪些编辑事件是可以被响应的,最终这些能够响应的编辑事件将被展示在菜单中供用户使用。(www.xing528.com)
4.UIResponderStandardEditActions
这个协议声明了应用程序可以采用的一组标准方法来支持编辑,包括复制、剪切、粘贴、选定和全部选定等方法。当用户选择编辑菜单上的某个动作时,相应的UIResponderStandardEditActions方法就会被调用。UIResponder的子类可以实现此协议的方法来处理与编辑相关的标准操作,例如UIMenuController对象使用这些方法传递编辑操作。UIMenuController需要通过UIKit在响应者链中找到实现适当方法的对象,在实现它的第一个对象上调用这些方法。
UIKit框架在UITextView、UITextField和UIWebView类中实现了基本的复制、剪切和粘贴支持。
这个方法根据当前的上下文来判断哪些编辑事件是可以被响应的,最终这些能够响应的编辑事件将被展示在菜单中供用户使用。
4.UIResponderStandardEditActions
这个协议声明了应用程序可以采用的一组标准方法来支持编辑,包括复制、剪切、粘贴、选定和全部选定等方法。当用户选择编辑菜单上的某个动作时,相应的UIResponderStandardEditActions方法就会被调用。UIResponder的子类可以实现此协议的方法来处理与编辑相关的标准操作,例如UIMenuController对象使用这些方法传递编辑操作。UIMenuController需要通过UIKit在响应者链中找到实现适当方法的对象,在实现它的第一个对象上调用这些方法。
UIKit框架在UITextView、UITextField和UIWebView类中实现了基本的复制、剪切和粘贴支持。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。