Starling Feathers Controls Drawers
2014-09-11 17:10
218 查看
说明:
The Drawers class provides a container that supports main content in the center with “drawers”, or slide-out menus, that may be opened and closed with a gesture around all four edges. Drawers may also be docked to remain open at all times, or based on the
stage orientation. Drawers may be opened by listening to an event from the main content, such as one triggered by a button press.
用法:
<span style="white-space:pre"> </span>private var _drawersList:List;
<span style="white-space:pre"> </span>private var _drawersNavigator:ScreenNavigator
<span style="white-space:pre"> </span>private function testDrawers():void
<span style="white-space:pre"> </span>{
<span style="white-space:pre"> </span>_drawersNavigator = new ScreenNavigator();
<span style="white-space:pre"> </span>_drawersNavigator.addScreen( "start", new ScreenNavigatorItem( StartScreen ) );
<span style="white-space:pre"> </span>_drawersNavigator.addScreen( "options", new ScreenNavigatorItem( OptionsScreen ) );
<span style="white-space:pre"> </span>_drawersNavigator.showScreen( "start" );
<span style="white-space:pre"> </span>
<span style="white-space:pre"> </span>_drawersList = new List();
<span style="white-space:pre"> </span>_drawersList.dataProvider = new ListCollection(
<span style="white-space:pre"> </span>[
<span style="white-space:pre"> </span>{ screen: "start", label: "Start" },
<span style="white-space:pre"> </span>{ screen: "options", label: "Options" },
<span style="white-space:pre"> </span>]);
<span style="white-space:pre"> </span>_drawersList.selectedIndex = 0;
<span style="white-space:pre"> </span>_drawersList.addEventListener( Event.CHANGE, list_changeHandler );
<span style="white-space:pre"> </span>
<span style="white-space:pre"> </span>var drawers:Drawers = new Drawers();
<span style="white-space:pre"> </span>drawers.content = _drawersNavigator;
<span style="white-space:pre"> </span>drawers.leftDrawer = _drawersList;
<span style="white-space:pre"> </span>drawers.leftDrawerToggleEventType = Event.OPEN;
<span style="white-space:pre"> </span>this.addChild( drawers );
//<span style="white-space:pre"> </span>drawers.toggleLeftDrawer();
<span style="white-space:pre"> </span>}
<span style="white-space:pre"> </span>private function list_changeHandler(e:Event):void
<span style="white-space:pre"> </span>{
<span style="white-space:pre"> </span>var screen:String = _drawersList.selectedItem.screen;
<span style="white-space:pre"> </span>_drawersNavigator.showScreen( screen );
<span style="white-space:pre"> </span>}
StartScreen类:
package lft.fctest
{
import feathers.controls.Button;
import feathers.controls.Label;
import feathers.controls.PanelScreen;
import starling.events.Event;
/**
* Author:大飞狼
* <br>Date: 2014-9-11 下午3:52:58
* <br>Synopsis:
*/
public class StartScreen extends PanelScreen
{
public function StartScreen()
{
super();
}
override protected function initialize():void
{
super.initialize();
this.headerProperties.title = "Start";
var label:Label=new Label();
label.text="从左往右拖动左边可打开导航";
addChild(label);
var button:Button=new Button();
button.x=100;
button.y=100;
button.addEventListener(Event.TRIGGERED,buttonTriggered);
button.label="打开导航";
this.addChild(button);
}
private function buttonTriggered(e:Event):void
{
dispatchEventWith(Event.OPEN);
}
}
}
OptionsScreen类和StartScreen一样
效果:
更多说明参考:
http://wiki.starling-framework.org/feathers/drawers
The Drawers class provides a container that supports main content in the center with “drawers”, or slide-out menus, that may be opened and closed with a gesture around all four edges. Drawers may also be docked to remain open at all times, or based on the
stage orientation. Drawers may be opened by listening to an event from the main content, such as one triggered by a button press.
用法:
<span style="white-space:pre"> </span>private var _drawersList:List;
<span style="white-space:pre"> </span>private var _drawersNavigator:ScreenNavigator
<span style="white-space:pre"> </span>private function testDrawers():void
<span style="white-space:pre"> </span>{
<span style="white-space:pre"> </span>_drawersNavigator = new ScreenNavigator();
<span style="white-space:pre"> </span>_drawersNavigator.addScreen( "start", new ScreenNavigatorItem( StartScreen ) );
<span style="white-space:pre"> </span>_drawersNavigator.addScreen( "options", new ScreenNavigatorItem( OptionsScreen ) );
<span style="white-space:pre"> </span>_drawersNavigator.showScreen( "start" );
<span style="white-space:pre"> </span>
<span style="white-space:pre"> </span>_drawersList = new List();
<span style="white-space:pre"> </span>_drawersList.dataProvider = new ListCollection(
<span style="white-space:pre"> </span>[
<span style="white-space:pre"> </span>{ screen: "start", label: "Start" },
<span style="white-space:pre"> </span>{ screen: "options", label: "Options" },
<span style="white-space:pre"> </span>]);
<span style="white-space:pre"> </span>_drawersList.selectedIndex = 0;
<span style="white-space:pre"> </span>_drawersList.addEventListener( Event.CHANGE, list_changeHandler );
<span style="white-space:pre"> </span>
<span style="white-space:pre"> </span>var drawers:Drawers = new Drawers();
<span style="white-space:pre"> </span>drawers.content = _drawersNavigator;
<span style="white-space:pre"> </span>drawers.leftDrawer = _drawersList;
<span style="white-space:pre"> </span>drawers.leftDrawerToggleEventType = Event.OPEN;
<span style="white-space:pre"> </span>this.addChild( drawers );
//<span style="white-space:pre"> </span>drawers.toggleLeftDrawer();
<span style="white-space:pre"> </span>}
<span style="white-space:pre"> </span>private function list_changeHandler(e:Event):void
<span style="white-space:pre"> </span>{
<span style="white-space:pre"> </span>var screen:String = _drawersList.selectedItem.screen;
<span style="white-space:pre"> </span>_drawersNavigator.showScreen( screen );
<span style="white-space:pre"> </span>}
StartScreen类:
package lft.fctest
{
import feathers.controls.Button;
import feathers.controls.Label;
import feathers.controls.PanelScreen;
import starling.events.Event;
/**
* Author:大飞狼
* <br>Date: 2014-9-11 下午3:52:58
* <br>Synopsis:
*/
public class StartScreen extends PanelScreen
{
public function StartScreen()
{
super();
}
override protected function initialize():void
{
super.initialize();
this.headerProperties.title = "Start";
var label:Label=new Label();
label.text="从左往右拖动左边可打开导航";
addChild(label);
var button:Button=new Button();
button.x=100;
button.y=100;
button.addEventListener(Event.TRIGGERED,buttonTriggered);
button.label="打开导航";
this.addChild(button);
}
private function buttonTriggered(e:Event):void
{
dispatchEventWith(Event.OPEN);
}
}
}
OptionsScreen类和StartScreen一样
效果:
更多说明参考:
http://wiki.starling-framework.org/feathers/drawers
相关文章推荐
- Starling Feathers Controls Drawers
- Some Experience about userControls
- 关于webcontrols的TreeView中转义符的处理问题
- 做一个有图片的button(webcontrols)
- [原创]使用Microsoft.Web.UI.WebControls的iewc轻松解决权限树问题(无限级权限管理)
- [Programming Visual C++]Chapt six-Windows Common Controls
- Change properties of Web page controls in ASPX.CS
- [收藏]Dynamic Controls in ASP.NET
- 从Web Controls到DHTML学习随想
- How To Enumerate OLE and VB Controls from an OLE Control
- Embedding and retrieving resources in custom controls
- 08. Working with the GridView and FormView Controls
- 使用IE WebControls中的TabStrip控件和MultiPage控件实现选项卡式风格页面
- showing tooltip on controls (description on TTN_NEEDTEXT)
- [转]Data Source Controls - Under the Hood (Part 1)
- HTML Controls->ASP.NET HtmlForm Control
- Web Server Controls->ASP.NET DropDownList Control
- Web Server Controls->ASP.NET XML Control
- Adding Controls to Web Zones
- Standard Controls[4]->Calendar