繁体   English   中英

使用Objective-C在iOS中创建提及朋友

[英]Create a Mention friend in iOS with Objective-C

仍在学习iOS开发,想在Facebook / Instagram中创建诸如提及朋友之类的东西。

在Instagram中提及人的用户界面

是否使用新的TableViewController并将子视图添加到同一View Controller? (在本例中为CommentViewController),但是,当我在CommentViewController中已经具有UITAbleViewController时,如何处理第二个tableviewcontroller?

查看您提供的图像,看来实现此效果的最佳方法是添加了UITableView的UIViewController。 创建的每个表视图都可以为其设置一个委托和数据源。 当textview检测到正在输入提及时(更多有关稍后检测此内容的信息),您将触发第二个tableview作为附加视图(子视图)出现,该视图覆盖您当前的tableview(或作为键盘的辅助视图,就像苹果一样)其他人则在键盘上显示了textview,用于输入文本(例如:消息应用)。

为了管理两个表视图,我的建议是创建另外两个类,每个类都符合UITableViewDelegate和UITableViewData源。 第一个是CommentsTableViewManager,第二个是MentionsTableViewManager。 第一个表视图将CommentsTableViewManager设置为其委托和数据源,第二个表视图使用MentionsTableViewManager。

您稍后可能遇到的另一个问题是确定如何正确检测在textview中键入的提及。 我实际上已经创建了一个开源库,它将帮助您解决此问题。 它位于这里: https : //github.com/szweier/SZMentionsSwift自述文件应该提供足够的信息,供您选择入门时使用。

希望有关的信息能帮助您开始使用您的应用程序。

从架构的角度来看,最好有一个具有更改后的数据源容器的单个表视图,具体取决于当前模式。

说出instagram方式-您正在显示评论,或者,如果检测到@符号,则显示用户列表。 因此,几乎所有UITableView的委托和数据源方法都将以if (isMentionMode) ,您将根据isMentionMode状态选择特定的单元格类/单元格的高度/每节的行数等。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM