SORU
12 Ocak 2012, PERŞEMBE


UİLabel - metin ve bağlantılar olarak dize

Bir sunucudan alıyorum kimin UILabel var. Bazı metin bağlantıları olarak tespit edilmesi ve bu bağlantıları dokunmadan bazı eylemler gerçekleştirilmelidir. örneğin

= @Str NSString *"telefon numaram 645-345-2345 ve adresim xyz";

Bu UILabel için tam metin. Bu metin görüntüleme (Metin dinamik. 5* *sadece bir tane var Ben sadece bir örnek verdim.). Bu bağlantılarla ilgili bazı farklı ekran gezinme gibi eylemleri gerçekleştirmek ya da bir çağrı yapmak istiyorum.
Yardımı ile bu metin görüntülemek biliyorumOHAttributedLabel. Ve bağlantılar aşağıdaki gibi gösterilebilir

[label1 addCustomLink:[NSURL URLWithString:@"http://www.foodreporter.net"] inRange:[txt rangeOfString:someString]];  

Ama ben bunları nasıl yapabilir merak ediyorummetin bağlantılarıarama yapma, farklı ekran veya navigasyon gibi bazı eylemleri gerçekleştirmek.
Eğer daha fazla açıklama gerekiyorsa bana bildirin.

CEVAP
19 Ocak 2012, PERŞEMBE


Bağlantıları kullanarak destek UILabel kullanılabilir değiştirmeleri için herhangi bir özel eylemler ekleyebilirsinizsahteURL şemasıdaha sonra müdahale edeceğiz:

TTTAttributedLabel *tttLabel = <# create the label here #>;
NSString *labelText = @"Lost? Learn more.";
tttLabel.text = labelText;
NSRange r = [labelText rangeOfString:@"Learn more"]; 
[tttLabel addLinkToURL:[NSURL URLWithString:@"action://show-help"] withRange:r];

Sonra, TTTAttributedLabelDelegate içinde:

- (void)attributedLabel:(TTTAttributedLabel *)label didSelectLinkWithURL:(NSURL *)url {
    if ([[url scheme] hasPrefix:@"action"]) {
        if ([[url host] hasPrefix:@"show-help"]) {
            /* load help screen */
        } else if ([[url host] hasPrefix:@"show-settings"]) {
            /* load settings screen */
        }
    } else {
        /* deal with http links here */
    }
}

TTTAttributedLabel OHAttributedLabel bir çatal.

Eğer daha karmaşık bir yaklaşım istiyorsanız, Nimbus Attributed Label bir bakın. Out-of-the-box, özel bağlantıları destekler.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BioHunta

    BioHunta

    28 Mayıs 2006
  • Joseph Hayhoe

    Joseph Hayho

    20 Mayıs 2010
  • Top Gear

    Top Gear

    27 Mart 2006