如何使 UILabel 充当链接以打开带有预加载 UILabel 地址的空白电子邮件



我已经建立了一个各种各样的"教师目录",我将数据填写到3个字段中,姓名,职位和电子邮件。 所有字段都UILabels 。 我该如何做到这一点,以便您可以单击电子邮件并打开一封空白电子邮件?

    @interface PersonDetailTableViewController ()
@end
@implementation PersonDetailTableViewController
@synthesize fnameLabel, snameLabel, emailLabel, person;
- (void)viewDidLoad
{
    [super viewDidLoad];
    [super viewDidLoad];
    self.fnameLabel.text = self.person.fname;
    self.snameLabel.text = self.person.sname;
    self.emailLabel.text = self.person.email;
}

(这是显示数据的表视图控制器)

使用具有透明背景的按钮 (UIButtonTypeCustom)

在您看来,使用:

[self.btnLabel addTarget:self action:@selector(btnLabelTouch:) forControlEvents:UIControlEventTouchUpInside];
self.btnLabel.titleLabel.text = @"text";

按钮操作:

- (IBAction)btnLabelTouch:(id)sender
{
    //open email code here//
}

您可以使用UITapGestureRecognizer .将此添加到viewDidLoad

UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tap)];
[self.fnameLabel addGestureRecognizer:tap];
tap.numberOfTapsRequired = 1;
tap.cancelsTouchesInView = NO;

接下来添加一个新方法:

-(void)tap
{
     //Do whatever
}

最新更新