UI выравнивания в LWUIT? - PullRequest
       41

UI выравнивания в LWUIT?

1 голос
/ 19 января 2012

Я использую LWUIT для создания приложения J2ME.Я использовал GridLayout, чтобы добавить элементы управления, но они не выровнены.

Код:

flowLayout = new FlowLayout();
        roundsPage.setLayout(flowLayout);


    try {
        image = image.createImage("/11.png"); // All image 40 x 40
        starImage = Image.createImage("/j1.png");
        smileImage = Image.createImage("/j2.png");
        imgClock = Image.createImage("/clock.jpg");
        imageTeam = Image.createImage("/name.png");         

    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }           

    dateLabel=new Label("14-02-2012, Round1          ");
    dateLabel.getStyle().setBgColor(0x8b8989);
    dateLabel.getStyle().setFgColor(0xffffff);
    roundsPage.addComponent(dateLabel);

    //int screenWidth = Display.getInstance().getDisplayWidth();

    Container tabContainer1 = new Container(new BoxLayout(BoxLayout.Y_AXIS));
        tabContainer1.addComponent(new Button("Click"));
        tabContainer1.addComponent(new Button("Click"));
        tabContainer1.addComponent(new Button("Click"));
        tabContainer1.addComponent(new Button("Click"));        


    Container tabContainer2 = new Container(new BoxLayout(BoxLayout.X_AXIS));
        team1=new Label(starImage);
        team1.setText("Villarreal");
        team1.setTextPosition(Component.BOTTOM);
        //team1.setWidth(10);
        //team1.getStyle().setFont(Font.createSystemFont(Font.FACE_SYSTEM, Font.STYLE_PLAIN ,Font.SIZE_SMALL));
        tabContainer2.addComponent(team1);  
        tabContainer2.setWidth(100);

        clockLabel=new Label(imgClock);
        clockLabel.setText("18:00");
        clockLabel.setTextPosition(Component.RIGHT);            
        tabContainer2.addComponent(clockLabel);

        teamLabel=new Label(imageTeam);
        teamLabel.setText("El Madrigal");
        teamLabel.setTextPosition(Component.RIGHT);
        tabContainer2.addComponent(teamLabel);

        team2=new Label(smileImage);
        team2.setText("Betis");
        team2.setTextPosition(Component.BOTTOM);
        team2.setFocusable(true);
        tabContainer2.addComponent(team2);

    Container tabContainer3 = new Container(new BoxLayout(BoxLayout.Y_AXIS));           
        tabContainer3.addComponent(new Button("Click"));
        tabContainer3.addComponent(new Button("Click"));
        tabContainer3.addComponent(new Button("Click"));
        tabContainer3.addComponent(new Button("Click"));        

    TabbedPane tabbbed = new TabbedPane();
    tabbbed.addTab(null, image, tabContainer1 ); 
    tabbbed.addTab(null, image, tabContainer2);
    tabbbed.addTab(null, image, tabContainer3);
    roundsPage.addComponent(tabbbed);   

Заранее спасибо.

1 Ответ

0 голосов
/ 19 января 2012

Не используйте так "14-02-2012, Round1 ". Получите ширину дисплея и установите предпочтительный W на dateLabel. Для получения ширины экрана используйте это,

int width = Display.getInstance().getDisplayWidth();.

Также не используйте TabbedPane. Используйте Tabs. Добавьте кнопку в addTab и установите ширину кнопки. Потому что каждая вкладка имеет одинаковую ширину и высоту при использовании TabbedPane. Это проблема.

...