0

在我的应用程序中UITextView包含一个电子邮件地址。当我触摸并按住电子邮件地址时,会弹出一个带有以下按钮的操作表:

  • “新消息”
  • “添加到联系人”
  • 等等

如何对“新消息”按钮单击执行自定义操作?

4

3 回答 3

2

首先你UIActionSheetDelegate在你的 .h 文件中实现然后执行它..

- (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex
{
    if (buttonIndex == 0)
    {
        // here you can perform new message action
    }
    else
    {
        // here you can perform add new contact action
    }
}
于 2013-04-18T11:31:06.467 回答
1

您必须将您的 viewController 设置为 actionSheets 委托,然后实现

-actionSheet:clickedButtonAtIndex:

然后执行您需要的操作。

于 2013-04-18T11:23:37.500 回答
1

您需要继承 UITextView 并覆盖该-setText:方法。在您的自定义实现中,您需要将UIDataDetector添加到您的子类中。

如果您不熟悉 NSDataDetector 及其实现,请查看TTTAttributedLabel的实现。它是 UILabel 的完整替代品,具有数据检测和非常完善的委托协议。

你可以采用它的大部分代码。

于 2013-04-19T10:37:11.213 回答