黑莓如何建立的TabBar? [英] blackberry how to create Tabbar?

查看:119
本文介绍了黑莓如何建立的TabBar?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

大家好如何在黑莓标签栏?

Hi all how to create Tab bar in blackberry ?

推荐答案

在此入口看看:

<一个href=\"http://www.blackberry.com/knowledgecenterpublic/livelink.exe/fetch/2000/348583/800332/800505/800508/How_To_-_Create_tabbed_view_screens.html?nodeid=1357482&vernum=0\"相对=nofollow>如何 - 创建标签视图屏幕

的例子包括:

package com.rim.samples.tabcontrol;

import net.rim.device.api.ui.Field;
import net.rim.device.api.ui.FocusChangeListener;
import net.rim.device.api.ui.UiApplication;
import net.rim.device.api.ui.component.BasicEditField;
import net.rim.device.api.ui.component.LabelField;
import net.rim.device.api.ui.component.SeparatorField;
import net.rim.device.api.ui.container.HorizontalFieldManager;
import net.rim.device.api.ui.container.MainScreen;
import net.rim.device.api.ui.container.VerticalFieldManager;

public class TabControl extends UiApplication {

    public TabControl() {
        TabControlScreen screen = new TabControlScreen();
        pushScreen(screen);
    }

    /**
     * @param args
     */
    public static void main(String[] args) {
        TabControl app = new TabControl();
        app.enterEventDispatcher();
    }

    private class TabControlScreen extends MainScreen implements FocusChangeListener {

        private LabelField tab1;

        private LabelField tab2;

        private LabelField tab3;

        private LabelField spacer1;

        private LabelField spacer2;

        private VerticalFieldManager tabArea;

        private LabelField tab1Heading;

        private BasicEditField tab1Field1;

        private BasicEditField tab1Field2;

        private LabelField tab2Heading;

        private BasicEditField tab2Field1;

        private BasicEditField tab2Field2;

        private LabelField tab3Heading;

        private BasicEditField tab3Field1;

        private BasicEditField tab3Field2;

        private VerticalFieldManager tab1Manager;
        private VerticalFieldManager tab2Manager;
        private VerticalFieldManager tab3Manager;


        public TabControlScreen() {
            HorizontalFieldManager hManager = new HorizontalFieldManager();
            tab1 = new LabelField("Page 1", LabelField.FOCUSABLE | LabelField.HIGHLIGHT_SELECT);
            tab2 = new LabelField("Page 2", LabelField.FOCUSABLE | LabelField.HIGHLIGHT_SELECT);
            tab3 = new LabelField("Page 3", LabelField.FOCUSABLE | LabelField.HIGHLIGHT_SELECT);
            spacer1 = new LabelField(" | ", LabelField.NON_FOCUSABLE);
            spacer2 = new LabelField(" | ", LabelField.NON_FOCUSABLE);

            tab1.setFocusListener(this);
            tab2.setFocusListener(this);
            tab3.setFocusListener(this);
            hManager.add(tab1);
            hManager.add(spacer1);
            hManager.add(tab2);
            hManager.add(spacer2);
            hManager.add(tab3);

            add(hManager);
            add(new SeparatorField());

            tab1Manager = new VerticalFieldManager();
            tab2Manager = new VerticalFieldManager();
            tab3Manager = new VerticalFieldManager();

            tabArea = displayTab1();
            add(tabArea);

        }

        public void focusChanged(Field field, int eventType) {
            if (tabArea != null) {
                if (eventType == FOCUS_GAINED) {
                    if (field == tab1) {
                        System.out.println("Switch to Tab 1");
                        delete(tabArea);
                        tabArea = displayTab1();
                        add(tabArea);
                    } else if (field == tab2) {
                        System.out.println("Switch to Tab 2");
                        System.out.println("Switch to Tab 1");
                        delete(tabArea);
                        tabArea = displayTab2();
                        add(tabArea);
                    } else if (field == tab3) {
                        System.out.println("Switch to Tab 3");
                        System.out.println("Switch to Tab 1");
                        delete(tabArea);
                        tabArea = displayTab3();
                        add(tabArea);
                    }
                }
            }

        }

        public VerticalFieldManager displayTab1() {
            if (tab1Heading == null) {
                tab1Heading = new LabelField("Registration");
                tab1Manager.add(tab1Heading);
            }
            if (tab1Field1 == null) {
                tab1Field1 = new BasicEditField("Username: ", "");
                tab1Manager.add(tab1Field1);
            }
            if (tab1Field2 == null) {
                tab1Field2 = new BasicEditField("Password: ", "");
                tab1Manager.add(tab1Field2);
            }
            return tab1Manager;
        }

        public VerticalFieldManager displayTab2() {
            if (tab2Heading == null) {
                tab2Heading = new LabelField("Password Recovery");
                tab2Manager.add(tab2Heading);
            }
            if (tab2Field1 == null) {
                tab2Field1 = new BasicEditField("Security Question: ", "Mother's Maiden Name?");
                tab2Manager.add(tab2Field1);
            }
            if (tab2Field2 == null) {
                tab2Field2 = new BasicEditField("Password: ", "");
                tab2Manager.add(tab2Field2);
            }
            return tab2Manager;
        }

        public VerticalFieldManager displayTab3() {
            if (tab3Heading == null) {
                tab3Heading = new LabelField("Interests");
                tab3Manager.add(tab3Heading);
            }
            if (tab3Field1 == null) {
                tab3Field1 = new BasicEditField("Hobbies: ", "");
                tab3Manager.add(tab3Field1);
            }
            if (tab3Field2 == null) {
                tab3Field2 = new BasicEditField("Memberships: ", "");
                tab3Manager.add(tab3Field2);
            }
            return tab3Manager;
        }

    }

}

这篇关于黑莓如何建立的TabBar?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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