Я новичок в Swift и iOS. В Android мы можем легко растянуть изображение и поместить некоторое содержимое внутри этого изображения, но я не нахожу эквивалент для iOS.Эквивалентный Android 9-patch для iOS и Swift 3.0 (несколько растягиваемых областей)
Я нашел много учебников/сообщений с методом resizableImage (withCapInsets), но это не совсем то, что я хочу. Посмотрите на эту фотографию:
Зоны 2, 4, 5, 6 и 8 будут растянуты и только их. С Android 9-патч, можно определить несколько растяжению области, как показано ниже:
Здесь только красные районы растяжению. Этот метод действительно полезен для сохранения зеленой зоны, но это невозможно с resizableImage (withCapInsets).
Кроме того, с 9-патчем для Android мы можем легко определить область содержимого, такую как texview, imageview, ... в синей области, и изображение растягивается в соответствии с размером текста в этой области. Возможно ли это с iOS и Swift?
Если это простое векторное изображение, подобное выше, чем вы можете использовать UIBezierPath для рисования фигуры. Это легко настраивается, чтобы растянуть ват, который вам нужен, и сделать более резкий результат – Emptyless
или использовать два изображения. см. также http://stackoverflow.com/questions/20117787/custom-resizable-image-drawing-in-ios –
К сожалению, это не векторное изображение, и я нашел решение 3 изображений, но это не очень приятно, и есть много работа ... в Android мы можем сделать это легко с помощью только одного изображения, я не могу себе представить, что подобного решения для iOS нет! спасибо за ваши предложения =) – Arthurius