SORU
9 Ocak 2012, PAZARTESİ


UİLabel - otomatik boyut bir metin sığdırmak için etiket?

Otomatik boyutlandırma kutusu/bulunan metni sığdırmak için sınırlarına UİLabel mümkün mü? (Eğer daha büyük ekran daha bitiyor umurumda değil)

Eğer bir kullanıcı girerse o kadar "" veya "benim adım bu kutuya sığdırmak istiyorum çok uzun", hiç kesilir ve etiket 'genişledi' buna göre? Merhaba

TEŞEKKÜRLER!

CEVAP
10 Ocak 2012, Salı


lütfen kontrol edin benim özü nerede ben bir kategori için UILabel için çok benzer bir şey, benim kategori sağlar UILabel ihtimal boy göstermek tüm içeriği: https://gist.github.com/1005520

Ya bu yazı check out: http://stackoverflow.com/a/7242981/662605

Bu yükseklik germek istiyorum, ama etrafında değiştirmek ve ne yapmak istediğini inanıyorum ki böyle bir şey ile genişliği streç:

@implementation UILabel (dynamicSizeMeWidth)

-(void)resizeToStretch{
    float width = [self expectedWidth];
    CGRect newFrame = [self frame];
    newFrame.size.width = width;
    [self setFrame:newFrame];
}

-(float)expectedWidth{
    [self setNumberOfLines:1];

    CGSize maximumLabelSize = CGSizeMake( CGFLOAT_MAX, CGRectGetWidth(self.bounds) );

    CGSize expectedLabelSize = [[self text] sizeWithFont:[self font] 
                                            constrainedToSize:maximumLabelSize
                                            lineBreakMode:[self lineBreakMode]]; 
    return expectedLabelSize.width;
}

@end

Daha basit sizeToFit yöntemi UIView sınıfından kullanılabilir, ama 1 satır sayısını güvenli olması için ayarlayabilirsiniz.


iOS 6 güncelleme

Eğer Otomatik kullanıyorsanız, o zaman inşa bir çözüm olacaktır. 0, çerçevesi için satır sayısını ayarlayarak etiket uygun (yükseklik daha ekleyerek) yeniden boyutlandırmak olacaktır metni sığdırmak için.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Day9TV

    Day9TV

    22 NİSAN 2010
  • Evan Coury

    Evan Coury

    29 NİSAN 2007
  • GavinMichaelBooth

    GavinMichael

    26 AĞUSTOS 2006