无法单击UITextview电子邮件地址

时间:2016-02-19 16:38:57

标签: ios swift uitextview

我正在尝试通过获取json编码数组来创建一个从sql数据库获取数据的应用程序。

它将地址数据和其他类型的数据传递给mapkit Map View元素和一些标签/文本视图元素。

地图视图大约占视图上半部分的一半。视图的下半部分包含有关地图上显示内容的数据。

地图效果非常好,我可以在应用程序的下半部分检索标签和textview的文本。

我从sql数据库中提取了一个电子邮件地址,我希望在文本视图中显示它。检索并插入电子邮件,当我运行应用程序时它会变为蓝色,但我仍然无法单击它。

在main.storyboard中,我取消选中“可编辑”并选中“可选”并检测“链接”,“地址”,“电话号码”,“事件”以及选中“启用用户交互”。

为什么电子邮件无法点击?我希望能够点击它以便发送电子邮件。

import Foundation

import UIKit

import MapKit

class DetailViewController : UIViewController, UITableViewDelegate, UITextFieldDelegate {

@IBOutlet weak var mapView: MKMapView!

@IBOutlet weak var contactText: UITextView! 

@IBOutlet weak var textLabel: UILabel!

var selectedLocation : LocationModel?

override func viewDidLoad() {
    super.viewDidLoad()

}

override func viewDidAppear(animated: Bool) {

    let address = self.selectedLocation!.address

        CLGeocoder().geocodeAddressString(address!, completionHandler: { (placemarks, error) in
            if error != nil {
                print(error)
                return
            }
            if placemarks?.count > 0 {
                let placemark = placemarks?[0]
                let location = placemark?.location
                let coordinate = location?.coordinate

                     let viewRegion: MKCoordinateRegion = MKCoordinateRegionMakeWithDistance(coordinate!, 1750, 1750)


                self.mapView.setRegion(viewRegion, animated: true)
                    // Plot pin
                let pin: MKPointAnnotation = MKPointAnnotation()
                pin.coordinate = coordinate!
                    self.mapView.addAnnotation(pin)

                    //add title to the pin
                pin.title = self.selectedLocation!.overskrift

                if placemark?.areasOfInterest?.count > 0 {
                    //let areaOfInterest = placemark!.areasOfInterest![0]

                    //print(areaOfInterest)

                } else {
                    print("No area of interest found.")
                }
            }
        })


    textLabel.text = self.selectedLocation!.intro        

    //The following text should be a link but is not.
    contactText.text = self.selectedLocation!.email

} 
}

1 个答案:

答案 0 :(得分:0)

尝试使用点击手势识别器!将其拖动到连接的文本视图顶部,并使用函数将其连接到您的代码。