您的位置:首页 > Web前端

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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息