2012-01-11 4 views
0

enter image description hereНазвание на mapfieldScreen в blackeberry не видно

Я создаю приложение на карту. в котором я использую mapfield. на MapFieldScreen я пытаюсь добавить Title, а также создавать вкладки, но эти две вещи не видны. вместо этого в этих двух местах есть только серый цвет.

Вот мой код.

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

+0

ya .. фактически я расширяю класс вкладок. даже если заголовок также не отправляется. – Swati

+0

Я вставил этот код в один из моих «MainScreen», и заголовок работает (хотя я не уверен, почему вы вызываете 'super.paint()', если вы сами делаете краску). И я получил серый цвет на карте. – Rupak

ответ

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

+0

okay :), не могли бы вы проверить этот код без добавления какого-либо поля карты ... – Rupak

+0

без mapfield my код работает f9. Я использую этот же код с другим экраном, но не работает для полей карт. – Swati