Центрирование текста-заполнителя в подклассе UITextField

Итак, сначала мне нужно было установить цвет текста-заполнителя, поэтому я создал подкласс UITextfield, как показано в нескольких сообщениях о переполнении стека. Это прекрасно работает. Вот пример этого поста:Как создать подкласс UITextField и переопределить drawPlaceholderInRect, чтобы изменить цвет заполнителя .

Но когда я пытаюсь использовать searchNameField.textAlignment = UITextAlignmentCenter;, он больше не центрирует заполнитель. Вводимый текст по-прежнему центрирован.

Итак, если предположить, что центрирование не работает из-за подкласса, что мне нужно добавить в мой подкласс UITextField, чтобы центрировать текст-заполнитель?

Спасибо

Изменить

Вот код, который я использовал для решения этой проблемы. Это помещено в мой подкласс UITextField.

- (CGRect)placeholderRectForBounds:(CGRect)bounds 
{
    CGSize size = [[self placeholder] sizeWithFont:[UIFont fontWithName:@"Arial" size:placeholdTextSize]];

    return CGRectMake( (bounds.size.width - size.width)/2, bounds.origin.y, bounds.size.width, bounds.size.height);
}

Обратите внимание, что placeholdTextSize — это свойство, которое я задал во время инициализации.

5
задан Community 23 May 2017 в 10:28
поделиться