UIView (或 UILabel ?)与情节提要中另一个 View 的链接
Posted
技术标签:
【中文标题】UIView (或 UILabel ?)与情节提要中另一个 View 的链接【英文标题】:UIView (or UILabel ?) with links to another View in the storyboard 【发布时间】:2015-12-03 14:10:13 【问题描述】:我需要在我的 ios 应用程序(在 Objective C 中)中有一个文本部分,并写上不同的名称。每个姓名都必须链接到包含此人信息的视图。
我不知道该怎么做,使用什么能够在一个文本中生成多个链接,并且链接每个名称都执行正确的操作。因此,当我单击链接时,它应该将我单击的名称发送到所需的操作。
有人知道如何用 UIViews 做到这一点吗?还是 UILabel ?或任何东西..
另外,每当我将 UIView 放入我的 View 时,加载时间会更长,你知道为什么吗?
谢谢..希望这已经足够清楚了!
赫米卡
【问题讨论】:
只需使用 UIButton,将 titleLabel 设置为名称,并将操作设置为您想要的任何内容。 【参考方案1】:您可以为此使用RTLabel,
在你的代码中添加这个库,然后按照这个步骤,
在 .h 文件中添加此代码
//Import RTLabel
#import "RTLabel.h"
// Add delegate
@interface ViewController : UIViewController<RTLabelDelegate>
@end
在.m文件中
- (void)viewDidLoad
RTLabel *label = [[RTLabel alloc] initWithFrame:CGRectMake((self.view.frame.size.width-262)/2, (self.view.frame.size.height-203)/2, 262, 203)];
label.delegate = self;
// You have to create link for each name
NSString *searchString = @"<a href=\"Dilip\">Dilip</a> <a href=\"Dev\">Dev</a> <a href=\"Ram\">Ram</a>";
//RTLabel Delegate Method
- (void)rtLabel:(id)rtLabel didSelectLinkWithURL:(NSURL*)url
//When user click on one of the name this method will called and url will return the name which user has tapped. You can add condition on name that which view will display.
NSLog(@"did tap on name %@", url);
【讨论】:
请不要发布繁重的工作,您可以使用本机 UIElements 完成工作。 @Mr.T 这是帮助站点,我们可以提供任何可行的解决方案,用户可以选择他应该使用的东西。也没有什么是繁重的工作,它总是在我们身上。 @Mr.T 这不是否决答案的正确理由 它没有回答 OP 问题。 OP 正在询问一种在不同视图中移动的方法,以及关于 UIView 负载的问题。我没有找到任何可以回答 OP 问题的内容。 @Mr.T,所以答案不仅适用于 1 个用户,它适用于完整的社区,您无法判断其他人何时会检查此答案并发现它已满,否则同一用户会给它一个尝试为他提供更好的(并且根据他的需要)解决方案。鼓励新手尝试各种方式总是一件好事,如果回答中有问题或者它没有按照它所说的那样做,那么你可以提出问题,但是说这种方法很难,只是显示你的理解水平,再次抱歉粗鲁。【参考方案2】:您可以使用带有手势识别器的 UILabel 集合。或一组 UIButtons。 http://www.raywenderlich.com/104744/uigesturerecognizer-tutorial-creating-custom-recognizers
【讨论】:
以上是关于UIView (或 UILabel ?)与情节提要中另一个 View 的链接的主要内容,如果未能解决你的问题,请参考以下文章