2012-01-11 59 views
0

enter image description here地圖上的標題blackberry上的標題不可見

我正在創建一個地圖應用程序。我正在使用mapfield。在MapFieldScreen上,我試圖添加標題並創建選項卡,但這兩件事是不可見的。相反,在這兩個地方只有灰色。

這是我的代碼。

class MapFieldScreen extends MainScreen 
{ 
MapFieldScreen() 
{ 
    title= new LabelField("My Trip",LabelField.FIELD_HCENTER|LabelField.USE_ALL_WIDTH) 
    { 
     protected void layout(int width,int height) 
     { 
      setExtent(UIConstants.SCREEN_WIDTH, getFont().getHeight()*2); 
     } 
     public void paint(Graphics g) 
     { 
      g.setColor(Color.WHITE);    
      g.drawText(label,UIConstants.SCREEN_WIDTH*2/5,getFont().getHeight()/2); 
      super.paint(g); 
     } 
    }; 
    setTitle(title);  
    mLoc= Bitmap.getBitmapResource(UIConstants.STOP); 
    mmMapField = new MapField(); 

    add(mMapField); 

} 
} 
+0

有上面的示例代碼中,只有標題和地圖沒有標籤。 – Rupak 2012-01-11 05:36:58

+0

你..其實我擴展選項卡類。即使那個標題欄也沒有提交。 – Swati 2012-01-11 06:01:32

+0

我在我的'MainScreen'中粘貼了這段代碼,並且標題正在工作(儘管我不確定爲什麼你自己調用'super.paint()')。我在地圖上得到了灰色。 – Rupak 2012-01-11 06:13:13

回答

0

您可以檢查follwing代碼:

LabelField title = new LabelField("My Trip") { 
    int _width = Display.getWidth(); 
    int _height = getFont().getHeight() * 2; 

    protected void layout(int width, int height) { 
     setExtent(_width, _height); 
    } 

    public void paint(Graphics graphics) { 
     graphics.setColor(Color.WHITE); 
     int xText = (_width - getFont().getAdvance(getText()))/2; 
     int yText = (_height - getFont().getHeight())/2; 
     graphics.drawText(getText(), xText, yText); 
    } 
}; 

setTitle(title); 
+0

嘿謝謝..但它不工作..再次一些灰色只有沒有別的.. – Swati 2012-01-11 06:56:21

+0

好吧:),請你檢查該代碼,而不添加任何地圖字段... – Rupak 2012-01-11 07:08:04

+0

沒有地圖字段我的代碼正在工作f9。我使用與其他屏幕相同的代碼,但它不適用於地圖區域。 – Swati 2012-01-11 07:09:28