![]() |
|
||||||||||
|
|||||
|
Регистрация: Jun 2013
Сообщений: 17
|
Добрый день!
Беру изображение кнопки. Хочу использовать scale9grid. Пробывал двумя способами - и все безрезультатно. 1) Добавляю в библиотеку Adobe Flash, преобразовываю в символ с поддержкой scale9grid, выставляю пунктирными линиями центр кнопки, пишу action. Не работает, углы растягиваются. 2) Добавляю в библиотеку Adobe Flash, преобразовываю в символ, пишу action. var btn1:Sprite = new simpleBtn(); btn1.scale9grid = new Rectangle(5, 5, 81, 32); btn1.width = 100; addChild(btn1); Что я делаю не так, подскажите, пожалуйста. |
|
|||||
|
Lorem ipsum
|
1. В библиотеке правой кнопкой по символу, Propereties, ставим галочку "Enable guides for 9-slice scaling"
2. Rectangle(5, 5, 76, 27);
__________________
Поймай яблоко 2! |
|
|||||
|
Регистрация: Jun 2013
Сообщений: 17
|
import flash.geom.Rectangle; import flash.display.Sprite; var button:Sprite = new simpleBtn(); button.width = 150; button.x = 100; button.y = 100; button.scale9Grid = new Rectangle(5, 5, 76, 27); var button2:Sprite = new simpleBtn(); button2.width = 150; button2.x = 100; button2.y = 200; var button3:Sprite = new simpleBtn2(); button3.width = 150; button3.x = 100; button3.y = 300; addChild(button); addChild(button2); addChild(button3); Второй вариант: оригинальная кнопка Третий вариант: через Flash |
|
|||||
|
Регистрация: Feb 2010
Адрес: Город суеты
Сообщений: 191
|
А разве стандартный scale9grid работает с BitmapData ? вроде как надо использовать вектор
__________________
FlashPress.ru | Blog |
|
|||||
|
Регистрация: Jun 2013
Сообщений: 17
|
Спасибо!
Остановился на http://www.bytearray.org/?p=118 И добился таки результата Тут всего 200 строк кода (6,4 Кб) А без комментариев и того 113 строк и 4,6 Кб |
|
|||||
|
|
|
|||||
|
Есть еще дедушкин способ.
1) Расставляем в ИДЕ скейлгрид 2) Брейкапартим Битмапку 3) Все, что должно тянуться не трогаем 4) Каждый уголок группируем. 5) Вуаля.
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку. |
|
|||||
|
Регистрация: Jun 2013
Сообщений: 17
|
zuxul, это какой-то JS-based скрипт.
Не очень понравилось решение |
|
|||||
|
http://stackoverflow.com/questions/4...ogether-or-not
var rect:Rectangle = new Rectangle(20, 20, 60, 10); var gridX:Array = [rect.left, rect.right, bitmapData.width]; var gridY:Array = [rect.top, rect.bottom, bitmapData.height]; shape.graphics.clear(); var left:Number = 0; for (var i:int = 0; i < 3; i++) { var top:Number = 0; for (var j:int = 0; j < 3; j++) { shape.graphics.beginBitmapFill(bitmapData); shape.graphics.drawRect(left, top, gridX[i] - left, gridY[j] - top); shape.graphics.endFill(); top = gridY[j]; } left = gridX[i]; } shape.scale9Grid = rect;
__________________
משיח לא בא משיח גם לא מטלפן |
![]() |
![]() |
Часовой пояс GMT +4, время: 03:54. |
|
|
« Предыдущая тема | Следующая тема » |
|
|