SORU
16 ŞUBAT 2010, Salı


UİSegmentedControl seçilen parça rengi

UISegmentedControl seçili segment renk özelleştirmek için herhangi bir yolu var mı?

Bütün parçalı denetiminin bana özelleştirmek renk sağlar segmentedController.tintColor özellik buldum. Sorun olduğunda ben parlak renk seçmek için tintColor özellik, seçilen parça haline gelir neredeyse tanınmaz (rengi neredeyse aynı kalan parçalı kontrol, çok zor ayırt seçili ve seçilmemiş parça). Yapamam parçalı kontrol için herhangi bir iyi parlak renkler kullanın. Çözüm seçilen parça rengi için ayrı bir özelliği olacağını düşünüyorum. Herkes bu çözmek mi?

CEVAP
9 Mayıs 2011, PAZARTESİ


Burada değiştirmek için mutlak en kolay yolusegment seçilirherhangi bir RGB renk için. Hayır sınıflara ya da kesmek gerekir.

segmentedControl.segmentedControlStyle = UISegmentedControlStyleBar;

UIColor *newTintColor = [UIColor colorWithRed: 251/255.0 green:175/255.0 blue:93/255.0 alpha:1.0];
    segmentedControl.tintColor = newTintColor;

UIColor *newSelectedTintColor = [UIColor colorWithRed: 0/255.0 green:175/255.0 blue:0/255.0 alpha:1.0];
[[[segmentedControl subviews] objectAtIndex:0] setTintColor:newSelectedTintColor];

Bu örnek önemli adımları gösterir:

  1. Kontrol stilini ayarlar "Bunun için gerekli olan", StyleBar çalışmak için
  2. BM-seçilen renk ayarlar portakal için tüm kontrol ilk
  3. Seçilen rengi ayarlar yeşil segment

Notlar:

  • Adım 1 ve 2'de yapılabilir ınterface builder veya Kodu gösterilir. Ancak adım 3 sadece yapılabilir kod
  • Renk değerlerini ayarlayın bu gösterimde "123.0/255,0 arasındadır" RGB yapmak için sadece bir yol değerleri bunun yerine normalize öne kayan noktalı değişkenler UİColor gerektirdiği (sadece eğer istersen Yoksay)

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Dogbert files

    Dogbert file

    12 Ocak 2012
  • Edge-CGI 3D Tutorials and more!

    Edge-CGI 3D

    11 HAZİRAN 2013
  • Jonathan Leack

    Jonathan Lea

    26 ŞUBAT 2007