2010-08-09 20 views
5

UITableViewCell'de bir UITextField var. Bazı nedenlerden dolayı, temiz düğme textField'ın metniyle aynı hizada değil. Resim sorunu göstermek için var buradaNeden temizle düğmesi UITextField içindeki metinle hizalanmış değil?


cell.selectionStyle = UITableViewCellSelectionStyleNone; 
usernameField = [[UITextField alloc] initWithFrame:CGRectMake(22, 10, cell.contentView.frame.size.width, cell.contentView.frame.size.height)]; 
usernameField.adjustsFontSizeToFitWidth = YES; 
usernameField.placeholder = @"Username"; 
usernameField.backgroundColor = [UIColor clearColor]; 
usernameField.keyboardType = UIKeyboardTypeDefault; 
usernameField.autocapitalizationType = UITextAutocorrectionTypeNo; 
usernameField.autocorrectionType = UITextAutocorrectionTypeNo; 
usernameField.returnKeyType = UIReturnKeyNext; 
usernameField.delegate = self; 
usernameField.clearButtonMode = UITextFieldViewModeAlways; 
[usernameField setEnabled:YES]; 
[cell addSubview:usernameField]; 
[usernameField becomeFirstResponder]; 
[usernameField release]; 

Ve: İşte benim textField kod Screenshot

Düzenleme: Ben de - (CGRect)clearButtonRectForBounds:(CGRect)bounds ile denenmiş ve hala hiçbir şey

cevap

19

sizin contentVerticalAlignment özelliği nedir? Bu düğmeyi, temiz düğme orta hizalı olduğunda, ancak metin en üstte hizalandığında görünür. Aşağıdaki şekilde textfield hizalama ayarı deneyin:

usernameField.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter; 

bununla şansı var mı?

+0

Yardımlarınız için çok teşekkür ederiz, ancak şimdi metin ve temiz düğme hücrenin altına hizalanır. Bu kodu, metni gerçekten hizaladığınız, net düğmeyi değil. Temiz düğmeyi, hücrenin ortasına hizalamak istiyorum Herhangi bir öneriniz var mı? –

+0

Çalıştı! CGRect özniteliklerini –

+0

Sayfanın temiz düğmesine uyacak şekilde değiştirdim. açıklığa kavuşturmak için, dikey ofseti düzeltmek için hücrenin ve metin alanının yüksekliğini dikkate aldım. CGRect newFrame = albumTitleTextField.frame; newFrame.origin.y = (cell.bounds.size.height - newFrame.size.height)/2.0; [albumTitleTextField setFrame: newFrame]; –

İlgili konular