2011-07-14 130 views
0

我在Flex中創建了一個吉他選項卡顯示應用程序,我需要在水平線上顯示標籤。Flex形狀 - 標籤重疊

我使用下面的代碼創建水平線:

var s:UIComponent=new UIComponent(); 
    for(var i:int=0; i<6; i++) { 
     var y:Number=getStringY(i); 
     with (s.graphics) { 
      //beginFill(0xB7B7B7); 
      moveTo(15, y); 
      lineStyle(1, 0xB7B7B7); 
      lineTo(this.width - 15, y); 
      //endFill(); 
     } 
    } 
this.addChild(s); 

,然後使用

var l:Label=new Label(); 
l.x=xPos; 
l.y=yPos; 
l.text=labelText; 
this.addChild(l); 

但是添加標籤,結果我得到的是這個(http://imageshack.us/photo/my-images/607/stackoverflow.png) 通知低4與我們之前繪製的線重疊。 這導致可讀性問題,任何人都知道解決方法?

感謝, Pranav

回答

1

嘗試使用:

var s:UIComponent=new UIComponent(); 
    for(var i:int=0; i<6; i++) { 
     var y:Number=getStringY(i); 
     with (s.graphics) { 
      //beginFill(0xB7B7B7); 
      moveTo(15, y); 
      lineStyle(1, 0xB7B7B7); 
      lineTo(this.width - 15, y); 
      //endFill(); 
     } 
    } 
this.addChildAt(s, 0); 
+0

嘿嘿,謝謝,它的工作原理! 發生了什麼: 添加形狀位於creation_complete處理程序中,並且在構建組件後立即添加標籤,因此標籤將在行之前添加,因此線條會重疊標籤。 謝謝:) –