2014年8月1日 星期五

Featers NumericStepper 使用範例<數字遞增遞減組件>

/**
  * ...Featers NumericStepper 使用範例<數字遞增遞減組件>
  * @author Ray Cheng
  */
 public class NumericStepperDemo extends Sprite 
 {
  [Embed(source = "../bin/UI/btnAdd.png")]
  public var btnClass0:Class;
  
  [Embed(source = "../bin/UI/btnMinus.png")]
  public var btnClass1:Class;
  
  private var _btn:Button;
  
  private var _theme:MetalWorksMobileTheme;
  private var _stepper:NumericStepper;
  
  public function NumericStepperDemo() 
  {
   super();
   
   //--UI主題 初始化
   _theme = new MetalWorksMobileTheme();
   
   //--自行更換主題
   _theme.setInitializerForClass( NumericStepper, customNumericStepperInitializer, "customNumericStepper" );  
   _theme.setInitializerForClass( Button, numericStepperDecrementButtonInitializer, "customNumericStepperDecrementBtn" );//--遞減btn換皮
   _theme.setInitializerForClass( Button, numericStepperIncrementButtonInitializer, "customNumericStepperIncrementBtn" );//--遞增btn換皮
   
   //--組件初始化
   _stepper = new NumericStepper();
   _stepper.nameList.add("customNumericStepper");
   _stepper.customDecrementButtonName = "customNumericStepperDecrementBtn";
   _stepper.customIncrementButtonName = "customNumericStepperIncrementBtn";
   _stepper.minimum = 0;
   _stepper.maximum = 100;
   _stepper.value = 50;
   this.addChild( _stepper );
   
   //--遞增遞減值
   _stepper.step = 1;   
   _stepper.addEventListener( Event.CHANGE, stepperChangeHandler );  
   
   
  }
  
  private function numericStepperIncrementButtonInitializer(button:Button):void 
  {
   //--btn換膚
   button.defaultSkin = new Image( Texture.fromBitmap(new btnClass0()) );
   //button.downSkin = new Image( Texture.fromBitmap(new btnClass1()) );
  }
  
  private function numericStepperDecrementButtonInitializer(button:Button):void 
  {
   //--btn換膚
   button.defaultSkin = new Image( Texture.fromBitmap(new btnClass1()) );
   //button.downSkin = new Image( Texture.fromBitmap(new btnClass0()) );
  }
  
  private function customNumericStepperInitializer(stepper:NumericStepper):void 
  {
   //--水平或是垂直的顯示樣式
   //stepper.buttonLayoutMode = NumericStepper.BUTTON_LAYOUT_MODE_RIGHT_SIDE_VERTICAL;
   //stepper.buttonLayoutMode = NumericStepper.BUTTON_LAYOUT_MODE_SPLIT_HORIZONTAL;
   stepper.buttonLayoutMode = NumericStepper.BUTTON_LAYOUT_MODE_SPLIT_VERTICAL;  
   
  }
  
  private function stepperChangeHandler(e:Event):void 
  {
   var stepper:NumericStepper = NumericStepper( e.currentTarget );
   trace( "數字遞增組件改變值:", stepper.value);
  }
  
 }

沒有留言:

張貼留言

我的留言版