Custom chrome в AIR приложении и человеческий фактор
September 23, 2008 – 7:08 amПример приложения использующая исходники можно найти на сайте http://www.graviti.tv/blog/?p=46 (и http://www.graviti.tv/blog/?p=75 )
Но статья не о том как сделать кастомный хром, а неверном решении индийцев из адоб.
У кастомного хрома, как и у FlexChrome (showFlexChrome=”true”) есть проблемка, при максимайзе приложения оно выступает на 3 пиксела за экран во все стороны. При showFlexChrome=”true” как раз прячется скругление заголовка окна. Великолепный ход конем! :). При showFlexChrome=”true” это еще простительно, а вот когда у вас полностью свой кастом хром, то получается ужастно.
Как побороть это нормально я не нашел, пошел по простому выходу, вставил все приложение в отдельный компонент, а его сделал меньше текущего хрома ровно на 3 пх с каждой стороны)
<?xml version="1.0" encoding="utf-8"?> <mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" showFlexChrome="false" showStatusBar="false" showGripper="true" showTitleBar="false" width="700" height="500" frameRate="45" horizontalScrollPolicy="off" verticalScrollPolicy="off" xmlns:local="*" > <local:AIRApplicationContent width="{width-6}" height="{height-6}" x="{3}" y="{3}" filters="{[new DropShadowFilter(4,45,0,0.5)]}" /> </mx:WindowedApplication> |
В качестве бонуса получил использование тени от окна не сильно напрягаясь 🙂
2 Responses to “Custom chrome в AIR приложении и человеческий фактор”
Двойной ход конем 🙂
Илья, как думаешь, а если через оверрайд WindowedApplication.commitProperties – получилось бы?
Или еще больше головняка выйдет, как считаешь?
By Рост on Oct 1, 2008
В моем случае это было именное то, что нужно — все равно нужно было делать тень от приложения. Я думаю что можно и оверрайднуть что нужно. Но это дольше.
By Ilja on Oct 2, 2008