2012-06-27 16 views
6

ios uygulaması için genişletilebilir/daraltılabilir hücrelerle UITableView yapıyorum. Bu hücreler üzerine bir UITableViewCellAccessoryDisclosureIndicator koydum, ancak hücre genişletildiğinde/daraltıldığında oku yukarı/aşağı doğru yapmak istiyorum.UITableViewCellAccessoryDisclosureIndicator nasıl döndürülür?

Özel bir görüntünün bulunduğu bir düğmeyi yapmanın ve düğmenin hücrenin durumuna göre değiştirilebildiğini bulmuyorum ancak bana bir düğme gerekmediğinden ve 2 görüntü eklemek zorunda kaldığım için kirli görünüyor. projeye (tamam o kadar büyük değil ama yine de).

Varolan UITableViewCellAccessoryDisclosureIndicator'u döndürmek daha iyi olmaz mı? ve eğer öyleyse bunu nasıl yapabilirim?

+0

Tam tartışma .. http://stackoverflow.com/questions/13836606/use-table-view-disclosure-indicator-style-for-uibutton-ios – Fattie

cevap

8

Bu tam olarak ne istediğinizi değil, ama düşündüğüm ilk şey. ,

UIButton *button = [UIButton buttonWithType:UIButtonTypeDetailDisclosure]; 

Sonraki düğmesine 90 derece döndürmek: Birincisi, tip UIButtonTypeDetailDisclosure bir düğmeye örneğini

cell.accessoryView = button; 

Hope yardımcı olur:

CGAffineTransform rotationTransform = CGAffineTransformIdentity; 
rotationTransform = CGAffineTransformRotate(rotationTransform, DegreesToRadians(90)); 
button.transform = rotationTransform; 

Son olarak, accessoryView olarak düğmesini kullanın .

+0

DegressToRadians'ın kullanımı özel bir şey ister mi? Uygulamam artık derlemiyor ... Mimarisi için tanımlanmamış semboller i386: "_DegreesToRadians", referans: – Alexis

+1

Heh, Ön tanımlı olduğunu düşündüm. #define DegreesToRadians (x) (M_PI * x/180.0) 'bunun için çalışacaktır. Dosyanızın üstüne koyabilirsiniz. Birden fazla dosyada kullanırsanız, bir Conversions.h üstbilgisi oluşturmalı ve tanımlamayı oraya koymalısınız. –

+0

Evet sonunda neden doğrudan radyan kullanmıyorsunuz? M_PI/2 sadece iyi. – Alexis

İlgili konular