如何我可以在黑莓手机状态栏? [英] How i can Make Status Bar in Blackberry?

查看:156
本文介绍了如何我可以在黑莓手机状态栏?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我要定在屏幕的底部状态栏,它应该显示一个按钮左侧和一个右侧。你可以以低于看到我的屏幕。
我的code是这样的..

i want to set status bar at the bottom of screen and it should display one button left side and one right side. you can see my Screen at below. my code is like this..

private void BottomLayout() 
    {
        Bitmap topBg = Bitmap.getBitmapResource(ImageName.topbar);
        final Bitmap topBg1 = cmn_fun.resizeBitmap(topBg, SCREEN_WIDTH, topBg.getHeight());
        HorizontalFieldManager hfmbottom = new HorizontalFieldManager(Field.USE_ALL_WIDTH)
        {
            protected void paintBackground(Graphics graphics) 
            {
                graphics.drawBitmap(0,0,SCREEN_WIDTH,topBg1.getHeight(), topBg1,0,0 );             
                super.paint(graphics);
            }
            protected void sublayout(int maxWidth, int maxHeight) {
                // TODO Auto-generated method stub
                super.sublayout(topBg1.getWidth(), topBg1.getHeight());
                setExtent(topBg1.getWidth(), topBg1.getHeight());
            }

        };

        Bitmap imgprv=Bitmap.getBitmapResource(ImageName.btn_prev);
        Bitmap imgprv_sel=Bitmap.getBitmapResource(ImageName.btn_prev_sel);     
        btn_prev=new CustomButtonField(0, "", imgprv_sel, imgprv, Field.FIELD_LEFT);
        hfmbottom.add(btn_prev);

        Bitmap imgnext=Bitmap.getBitmapResource(ImageName.btn_next);
        Bitmap imgnext_sel=Bitmap.getBitmapResource(ImageName.btn_next_sel);        
        btn_next=new CustomButtonField(0, "", imgnext_sel, imgnext, Field.FIELD_RIGHT);
        hfmbottom.add(btn_next);


        setStatus(hfmbottom);

    }

先谢谢了。

推荐答案

我张贴你只在状态栏面板。

I am posting you only the status bar panel.

其实在Horizo​​ntalFieldManager它创造的问题。

Actually in the HorizontalFieldManager it does create problem.

因此​​发现了下面的方式,它是工作。它确实增加了额外的code,但它的工作原理

Therefore found out the following way and it is working. It does add extra code but it works

import net.rim.device.api.system.Bitmap;
import net.rim.device.api.system.Display;
import net.rim.device.api.ui.DrawStyle;
import net.rim.device.api.ui.Graphics;
import net.rim.device.api.ui.Manager;
import net.rim.device.api.ui.component.ButtonField;
import net.rim.device.api.ui.container.GridFieldManager;
import net.rim.device.api.ui.container.HorizontalFieldManager;
import net.rim.device.api.ui.container.MainScreen;
import net.rim.device.api.ui.container.VerticalFieldManager;

class SampleBottomPanelScreen extends MainScreen {

private HorizontalFieldManager title_bar;

private VerticalFieldManager btn1_manager;
private ButtonField btn1;
private VerticalFieldManager btn2_manager;
private ButtonField btn2;
Bitmap bg_image;

public SampleBottomPanelScreen() {

    //bg_image = Bitmap.getBitmapResource("backgroundImage.png");

    btn1_manager = new VerticalFieldManager(VerticalFieldManager.FIELD_LEFT) {

         protected void sublayout(int maxWidth, int maxHeight)
         {
                int displayWidth = Display.getWidth() / 2;
                int displayHeight = Display.getHeight();

                super.sublayout( displayWidth, displayHeight);
                setExtent( displayWidth, displayHeight);
         }  
    };

    btn2_manager = new VerticalFieldManager(VerticalFieldManager.FIELD_RIGHT | VerticalFieldManager.USE_ALL_WIDTH) {

         protected void sublayout(int maxWidth, int maxHeight)
         {
                int displayWidth = Display.getWidth() / 2;
                int displayHeight = Display.getHeight();

                super.sublayout( displayWidth, displayHeight);
                setExtent( displayWidth, displayHeight);
         }  
    };

    title_bar = new HorizontalFieldManager(Manager.USE_ALL_WIDTH){

        public void paint(Graphics graphics) {
            graphics.setBackgroundColor(0x2bb1ff);
            graphics.clear();

            super.paint(graphics);
        }

        protected void sublayout(int maxWidth, int maxHeight)
        {
            int displayWidth = Display.getWidth();
            int displayHeight = Display.getHeight() / 8;

            super.sublayout( displayWidth, displayHeight);
            setExtent( displayWidth, displayHeight);
        }   
    };

    btn1 = new ButtonField("Submit", ButtonField.LEFT | ButtonField.FIELD_LEFT);
    btn2 = new ButtonField("Cancel", ButtonField.RIGHT| ButtonField.FIELD_RIGHT);

    btn1_manager.add(btn1);
    btn2_manager.add(btn2);

    title_bar.add(btn1_manager);
    title_bar.add(btn2_manager);

    this.add(title_bar);
}
 }

这篇关于如何我可以在黑莓手机状态栏?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆