2011-11-10 35 views
0

我需要創建一個'滾動'百分比文本字段,唯一的問題是隨着字符大小的變化,文本從右向左晃動一下。AS3/Flash - 如何將字符彼此隔開一段規定的距離?

這是如何克服的,以獲得更平滑的效果?

private function init(e:Event = null):void 
    { 
     removeEventListener(Event.ADDED_TO_STAGE, init); 
     // entry point 

     _label = new TextField(); 
     _label.width = 140 

     _format = new TextFormat(); 
     _format.align = TextFormatAlign.RIGHT; 
     _format.size = 48; 
     _format.font = "Gotham"; 
     _format.color = 0x000000; 
     _label.defaultTextFormat = _format; 
     addChild(_label); 

     _timer = new Timer(20,100); 
     _timer.addEventListener(TimerEvent.TIMER, update); 
     _timer.start(); 
    } 

    private function update(e:TimerEvent):void 
    { 
     _count += 1; 
     _label.text = _count.toString() + "%"; 
    } 

回答

1

複雜的方式:有4個Textfield的。每個數字加一個%。

更聰明的解決方案:使用固定字母寬度的字體(如控制檯字體)。

+0

我擔心會是這樣,但我想不是很難分割字符串和更新四個文本字段。不要以爲設計師會對一個等寬字體感到高興! – davivid

+2

設計人員參與其中,程序員必須做200%的額外工作;-) – DanielB

0

最好和最簡單的方法可能是使用等寬字體(例如快遞)。

相關問題