2015-07-16 19 views
5

iOS geliştirmede yeniyim., uiLabel'ın altını çiziyor ve altı çizili bağlantıyı çiziyor

LatestInfo numaralı bir etiketim var ve bu bir metin içeriyor ve bir web sitesine bir bağlantıya sahip olması gerekiyor: ör. For the latest information visit example.com/latestInfo

Ekranın URL'yi example.com/latestInfo altını çizmesini ve tıklanabilir olmasını istiyorum.

Ben

nasıl bunu hakkında gitmek edemez Obejective-C Swift kullanıyorum? Pierre'in isteğinize göre

DÜZENLEME:

@IBOutlet weak var linkLabel: UITextView! 
let string    = "A great link : Google" 
let range    = (string as NSString).rangeOfString("Google") 
let attributedString = NSMutableAttributedString(string: string) 

attributedString.addAttribute(NSLinkAttributeName, value: NSURL("http://www.google.fr")!, range: range) 
attributedString.addAttribute(NSUnderlineStyleAttributeName, value: NSNumber(int: 1), range: range) 
attributedString.addAttribute(NSUnderlineColorAttributeName, value: UIColor.orangeColor(), range: range) 

linkLabel.attributedText = attributedString 
+0

bu bir göz [SO] (http://stackoverflow.com/questions/28053334/how-to-underline- var a-uilabel-in-swift) link – Akhilrajtr

cevap

12

Bak NSMutableAttributedString için ve özellikle NSLinkAttributeName için. Bununla ilgili bir sürü öğretici ve Stackoverflow sorusu var. Ayrıca, Apple'ın atfedilen dize ile ilgili belgelerini de okuyabilirsiniz. TextView, bağlantıları açabilen tek bileşendir. Dolayısıyla, sadece bununla etiketinizi değiştirip:

let string    = "A great link : Google" 
let range    = (string as NSString).rangeOfString("Google") 
let attributedString = NSMutableAttributedString(string: string) 

attributedString.addAttribute(NSLinkAttributeName, value: NSURL("http://www.google.fr")!, range: range) 
attributedString.addAttribute(NSUnderlineStyleAttributeName, value: NSNumber(int: 1), range: range) 
attributedString.addAttribute(NSUnderlineColorAttributeName, value: UIColor.orangeColor(), range: range) 


textView.attributedText = attributedString 
+0

Metnin altını çizmeyi başardım. Metnin bu bölümünü tıklanabilir kılabilir miyim? – Pindo

+0

Cevabımı düzenledim. İstediğin bu mu? – Pierre

+0

Bu bir bağlantı yapar. Bu bağlantıyı safari – Pindo

1

enter image description here

Please create one UILabel & check it's properties. 
Please select Text on first changed it's to plain to Attributed. 

    Now you can seen you label text in one Textfield. select that text & right click to you mouse & goto Font menu. you can seen Underline. select it. you can seen underline in your Label. 
İlgili konular