首页 文章 精选 留言 我的

精选列表

搜索[腾讯乐享],共10000篇文章
优秀的个人博客,低调大师

iOS 6分列表——UIActivityViewController详解

在iOS6之后提供了一个分享列表视图,它通过UIActivityViewController管理。苹果设计它主要的目的是替换分享动作选单(ActionSheet),分享动作选单是出于分享目的的动作选单。 通过动作选单上的选择按钮,可以把图片分享给别人。但是随着iOS功能的不断增加,需要分享的内容越来越多,它会以模态视图方式呈现。iPad设备的分享列表,它会以Popover视图方式呈现。 从图中可以看出分享列表中可以有很多页,每页有9个应用,可以左右滑动翻页,这样就可以共享更多的内容了。 内置活动列表项 分享列表使用UIActivityViewController来控制它的呈现和关闭,凡是继承UIActivity抽象类的子类对象都可以放在列表中呈现出来。 下 面我们通过一个实例介绍一下使用UIActivityViewController管理内置活动列表项,这个实例点击左画面工具栏中的Action按钮, 会弹出分享列表模态视图(中图所示),如果我们选择了微博,会弹出微博撰写对话框(右图所示),可以在这里撰写微博,完成之后可以点击“发送”按钮发送微 博,如果没有在系统设置中没有设置微博账户信息,则会有提示对话框。 我们下面介绍一下代码实现部分,代码参考ViewController.m的shareAction:方法: -(IBAction)shareAction:(id)sender{ NSString*textToShare=@”请大家登录《iOS云端与网络通讯》服务网站。”;① UIImage*imageToShare=[UIImageimageNamed:@"iosshare.jpg"];② NSURL*urlToShare=[NSURLURLWithString:@"http://www.iosbook3.com"];③ NSArray*activityItems=@[textToShare,imageToShare,urlToShare];④ UIActivityViewController*activityVC=[[UIActivityViewControlleralloc]initWithActivityItems:activityItems applicationActivities:nil];⑤ //不出现在活动项目 activityVC.excludedActivityTypes=@[UIActivityTypePrint,UIActivityTypeCopyToPasteboard, UIActivityTypeAssignToContact,UIActivityTypeSaveToCameraRoll];⑥ [selfpresentViewController:activityVCanimated:TRUEcompletion:nil];⑦ } 后面选择微博,以及发送微博这些全部是UIActivityViewController给我们封装好的,我们不需要编写一行代码 自定义活动列表项 有的时候根据我们共享内容不同,需要自动定义活动列表项。例如:你的应用是一个观看视频的应用,那么你可能需要共享视频到“优酷”视频网站。下面这一节我们介绍自定义活动列表项。 凡是继承UIActivity抽象类的子类对象都可以放在列表中呈现出来。这包括了iOS系统通过内置的9个活动列表,也可以是我们自定义的列表项。 下 面我们通过一个实例介绍一下使用UIActivityViewController管理自定义活动列表项,点击左画面工具栏中的Action按钮,会弹出 分享列表模态视图,其中列表中“打开Book”是我们自定义列表项,点击“打开Book”列表项执行一些操作,这里的操作是打开Book网站。 我们下面介绍一下代码实现部分,代码参考ViewController.m的shareAction:方法: -(IBAction)shareAction:(id)sender{ NSURL*urlToShare=[NSURLURLWithString:@"http://iosshare.cn/"];① NSArray*activityItems=@[urlToShare]; BookActivity*bookActivity=[BookActivitynew];② NSArray*applicationActivities=@[bookActivity]; UIActivityViewController*activityVC=[[UIActivityViewControlleralloc] initWithActivityItems:activityItems applicationActivities:applicationActivities];③ [selfpresentViewController:activityVCanimated:YEScompletion:nil]; } shareAction: 方法与上一节内置活动列表项类似,在本例中我们只需要一个数据项(即提供URL),第①行代码就是提供了URL。第②行代码实例化活动列表项 BookActivity,然后需要把它放到一个NSArray集合中。第③行代码实例化UIActivityViewController对象,构造方 法中applicationActivities部分参数在内置活动列表项为nil,在自定义活动列表项中是指定自定义活动列表项对象集合,就是 NSArray集合。 自定义活动列表项代码实现BookActivity.h的代码如下: #import<UIKit/UIKit.h> @interfaceBookActivity:UIActivity @property(nonatomic,strong)NSURL*url; @end 自定义活动列表项必须继承UIActivity,属性url提供列表项服务的数据项。BookActivity.m的代码如下: @implementationBookActivity -(NSString*)activityType{ returnNSStringFromClass([selfclass]);① } -(NSString*)activityTitle{ returnNSLocalizedStringFromTable(@”OpenBook”,@”BookActivity”,nil);② } -(UIImage*)activityImage{ return[UIImageimageNamed:@"Book"];③ } -(BOOL)canPerformWithActivityItems:(NSArray*)activityItems{ for(idactivityIteminactivityItems){④ if([activityItemisKindOfClass:[NSURLclass]]){⑤ if([[UIApplicationsharedApplication]canOpenURL:activityItem]){⑥ returnYES; } } } returnNO; } -(void)prepareWithActivityItems:(NSArray*)activityItems{ for(idactivityIteminactivityItems){ if([activityItemisKindOfClass:[NSURLclass]]){⑦ _url=activityItem;⑧ } } } -(void)performActivity{ BOOLcompleted=[[UIApplicationsharedApplication]openURL:_url];⑨ [selfactivityDidFinish:completed];⑩ } @end 本文转自 tony关东升 51CTO博客,原文链接:http://blog.51cto.com/tonyguan/1195374,如需转载请自行联系原作者

优秀的个人博客,低调大师

RWKV state:傻瓜式文学大师人生

state 是 RWKV 这类 RNN 大模型特有的状态。微调 RWKV 的初始 state,就相当于最彻底的 prompt tuning 。通过挂载不同的 state 文件,又可以使 RWKV 模型遵循特定的风格进行回答。 目前 RWKV 发布了中英文单轮对话、小说扩写、文言文对话、打油诗等多种 state 文件,其中打油诗和文言文 state 的效果兼顾了文学性和趣味性,强烈建议大家体验: state 效果预览 中英文单轮对话 搭载中文单轮对话增强 state 之后,RWKV 模型的回复更符合人类语言习惯,而且带丰富的 Emoji 表情,无论是多奇怪的问题它都会幽默而巧妙地进行作答。 中文小说扩写 搭载中文小说扩写 state 之后,RWKV 模型会根据用户输入的大纲或情节去扩写一段短文,效果非常棒: 打油诗 打油诗 state 可以根据用户输入的 prompt 输出一段诗,非常适合在朋友圈打造文人墨客形象。 想象一下,妈妈去庐山游玩拍了一堆美照,正在苦苦构思朋友圈文案,这时你突然送上诗词一首: 又或者中了五千万彩票,打算在朋友圈发表获奖感言: 一些不着调的幻想也能作诗一首: 文言文对话 文言文 state 分为纯文言文 state 和文言文+名著混合训练的 state ,更建议使用后者,因为它更具文采: 文言文在辅助文案创作上可谓独具一格,无论是给朋友结婚的贺词,还是在朋友圈发布获奖感言: 写景区描述,写段子,都不在话下: 又或是写一段周年庆文案(拍马屁): 我要从哪里下载 state 文件 ? 可以在 官方 HF 仓库下载 pth 格式的 state 文件。 Ai00 需要使用 st/state 格式的 state 文件,可以从 此 HF 仓库下载 st/state 格式的 state 文件。 国内可以访问的 HF 镜像网站: .pth 格式 state 文件:https://hf-mirror.com/BlinkDL/temp-latest-training-models/tree/main .st/.state 格式 state 文件:https://hf-mirror.com/cgisky/ai00_rwkv_x060/tree/main 现在有什么 state 文件 ? ✨ 受训练语料影响,目前发布的 state 文件仅支持单轮问答,暂不支持多轮问答。未来我们会推出支持多轮问答的 state 文件。 目前 RWKV 官方发布了以下 state 文件: chn_single_round:中文单轮对话增强,更符合人类语言习惯,带丰富的 Emoji 表情 eng_single_round:英文单轮对话增强,更符合人类语言习惯,带丰富的 Emoji 表情 chn_小说扩写_single_round:中文单轮对话,会根据用户输入进行小说扩写 chn_打油诗_single_round:中文单轮对话,会根据用户输入创作打油诗 chn_文言文_single_round:中文单轮对话,回答的风格会偏向文言文 chn_文言文和古典名著_single_round:中文单轮对话,回答的风格会偏向文言文和古典名著 下一步发布网文 state 和名著 state。 如何使用 state 文件 ? state 文件需要配合基底 RWKV 模型,才能发挥其效果。 你可以在 RWKV Runner 或者 Ai00 中搭载 state 文件,二者搭载 state 文件的方法略有不同。 RWKV Runner 挂载 state 文件 在 RWKV Runner 中,你可以按照以下步骤使用 state 文件: 启动一个 RWKV 模型 在配置页面选择对应的 state 点击保存配置按钮。 点击保存后即可实时更新 state ,无需重新启动 RWKV 模型。 在下图的示例中,我们已经启动了 RWKV-6-7B-World 模型。那么我们只需在 RWKV Runner 的配置页面,选择基于 RWKV-6 7B 的 state 文件(名称中带有 x060 * 7B 字段),然后点击 保存配置 按钮。 Ai00 挂载 state 文件 在 Ai00 中,你可以按照以下步骤使用 state 文件: 修改 config.toml 配置文件,开启 state 选项,并指定对应的 state 文件路径。 [[state]] # 开启 state 挂载功能 # default = false # 这条保留 `#` 注释符 # id = "fd7a60ed-7807-449f-8256-bccae3246222" # 非开发环境一般不指定 UUID,因此保留 `#` 注释符 name = "x060-7B-Chinese" # 为此 state 文件命名为“x060-7B-Chinese”,方便在 WebUI 选择 path = "rwkv-x060-chn_single_round_qa-7B-20240516-ctx2048.state" # 存放在 model 文件夹的 state 文件名称 Ai00 支持在 config.toml 配置文件中添加多个 [[state]] 块,一次配置多个 state 文件,然后在 WebUI 中动态切换 state 文件。 在下面的 Ai00 示例中,我们一次性加载三个基于 RWKV-6-7B 模型的 state 文件,在 config.toml 中添加如下配置: [[state]] # 挂载 state # default = false # 保持注释 # id = "fd7a60ed-7807-449f-8256-bccae3246222" # 非开发环境一般不指定 UUID,因此保留 `#` 注释符 name = "x060-7B-打油诗" # 为此 state 文件命名为“x060-7B-打油诗”,方便在 WebUI 选择 path = "x060-打油诗-7B.state" # 存放在 model 文件夹的 state 文件名称 [[state]] # 挂载第二个 state name = "x060-7B-文言文+古典名著" # 为此 state 文件命名为“x060-7B-打油诗”,方便在 WebUI 选择 path = "x060-文言文和古典名著-7B.state" # 存放在 model 文件夹的 state 文件名称 [[state]] # 挂载第三个 state name = "x060-7B-小说扩写" # 为此 state 文件命名为“x060-7B-小说扩写”,方便在 WebUI 选择 path = "x060-小说扩写-7B.state" # 存放在 model 文件夹的 state 文件名称 保存配置文件并启动 Ai00-server,在 Ai00 WebUI 右上角可以动态切换 state 。 在 Ai00 WebUI 切换 state 时,建议新建一个聊天会话或清除上一个 state 的聊天内容,以确保新的 state 文件生效。 未来会发布更多类型的 state 文件,也会发布基于 RWKV 模型训练 state 文件的教程,敬请期待! 彩蛋 实际上,现在这篇文章的标题,也是由搭载文言文 state 的 RWKV-6 7B 模型提供灵感:

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册