Как реализовать scale-9 (9-slice) для пользовательского фонового искусства, созданного для UIButton
Что мне нужно сделать программно, чтобы использовать одно и то же фоновое изображение для UIButton переменного размера? (обычно известный как 9-slice scaling или scale-9)
2 ответов
проверить:
- (UIImage *)stretchableImageWithLeftCapWidth:(NSInteger)leftCapWidth topCapHeight:(NSInteger)topCapHeight
в классе UIImage.
Если я правильно понимаю, что вы ищете, это позволяет вам использовать один png для определения того, как выглядит ваша кнопка, и она будет растягиваться до любого размера по вертикали или горизонтали.
Я знаю, что это старая тема, но для тех, кто натыкается на это после выхода iOS 5, Следует отметить из документации Apple, что stretchableImageWithLeftCapWidth:topCapHeight: метод устарел с iOS 5:
устарел в iOS 5.0. Не одобрять. Используйте resizableImageWithCapInsets: вместо этого укажите вставки крышки, чтобы интерьер был 1x1 область.
Итак, теперь, когда iOS 6 была анонсирована и скоро будет здесь, любой, кто разрабатывает для iOS 5 и выше, вероятно, должен взглянуть на resizableImageWithCapInsets вместо этого, какую документацию можно найти здесь:
ссылка на класс UIImage-resizableImageWithCapInsets
просто подумал, что я упомяну об этом, чтобы помочь любым разработчикам, которым нужен обновленный ответ на эту проблему.