Список j2me lwuit использует тот же фон ячейки

Я составляю список, в котором есть люди, и каждый оценивает фон ячейки, список дает каждой ячейке один и тот же фон скорости, но при прокрутке списка вверх или вниз ячейка, которую я перетаскиваю, принимает ее реальный фон скорости, но другие ячейки остаются фоновое изображение с одинаковой скоростью. Я использую полноценный сенсорный эмулятор nokia s40.

    list.setRenderer(new ListCellRenderer() {

        public Component getListFocusComponent(List list) {
            // TODO Auto-generated method stub
            return null;
        }

        public Component getListCellRendererComponent(List list,
                Object value, int index, boolean isSelected) {
            String rate = "";

            rate = Transportation.getDriverRate(value.toString(),
                    CityListForm.selectedCity);
            rate = (Integer.parseInt(rate)) > 25 ? "" + 5 : ""
                    + Integer.parseInt(rate) / 5;
            rate = "/" + rate + ".png";
            Image image = null;
            Label label = null;
            try {

                image = (Image.createImage(rate));
                System.out.println(rate);
            } catch (IOException e) {
                e.printStackTrace();
            }
            label = new Label();

            label.getStyle().setBgImage(image);
            label.setText(value.toString());
            label.getStyle().setAlignment(RIGHT);
            label.setTextPosition(RIGHT);
            Style style = label.getStyle();
            style.setBgColor(16777215);
            style.setFgColor(0);

            label.setPreferredH(42);
            return label;
        }
    });

person Amar Omar Ashour    schedule 09.11.2012    source источник


Ответы (2)


Используйте 1_

person Shai Almog    schedule 11.11.2012

спасибо за ответ, я решил это, создав контейнер и вставив в него две метки, одну для значения, а другую для значка скорости, и дал контейнеру макет и вернул контейнер в методе getListCellRendererComponent()

person Amar Omar Ashour    schedule 19.11.2012