Listview 黑莓短信对话列表

Listview 黑莓短信对话列表,listview,blackberry,inbox,Listview,Blackberry,Inbox,是否可以在应用程序中实现上述默认的blackberry文本消息对话列表视图。 如果是,我该怎么做?我对此一无所知,也找不到任何进一步的线索。 我将从我的应用服务器获取上述消息。 请帮忙 我以前喜欢这些图片 final Border rightBorder = BorderFactory.createBitmapBorder(new XYEdges(16, 23, 27, 16), Bitmap.getBitmapResource( "bubble_right.png" ) ); final

是否可以在应用程序中实现上述默认的blackberry文本消息对话列表视图。 如果是,我该怎么做?我对此一无所知,也找不到任何进一步的线索。 我将从我的应用服务器获取上述消息。 请帮忙

我以前喜欢这些图片

final Border rightBorder = BorderFactory.createBitmapBorder(new XYEdges(16, 23, 27, 16), Bitmap.getBitmapResource( "bubble_right.png" ) ); 
final Border leftBorder = BorderFactory.createBitmapBorder(new XYEdges(16, 16, 27, 23), Bitmap.getBitmapResource( "bubble_left.png" ) );

addHeading(leftBorder, Field.FIELD_LEFT,0xbdbdbd, txt,time_);


 public static void addHeading(Border border, long style, int backgroundcolour, String msg ,String time_) {
    VerticalFieldManager vfm = new VerticalFieldManager(Manager.VERTICAL_SCROLL | Manager.VERTICAL_SCROLLBAR | Field.USE_ALL_WIDTH );
    vfm.setMargin(0, 0, 0, 0);
    FieldLayout tt =  new FieldLayout(style, backgroundcolour, msg,time_);
    tt.setBorder(border);
    tt.setMargin( 5, 5, 5, 5 );
    vfm.add(tt);
    add(vfm);

}





public class FieldLayout extends VerticalFieldManager{

    Bitmap a;


     public FieldLayout(long style, final int backgroundcolour, String msg,String time_) {
  //  FieldLayout(long style,final int backgroundcolour,final String msg, final String picture) {
        super(style);


    HorizontalFieldManager hfm = new HorizontalFieldManager(){
        public void paint(Graphics graphics) {
            graphics.setBackgroundColor(backgroundcolour);
            graphics.clear();
            super.paint(graphics);
        }
    };



    VerticalFieldManager vfm = new VerticalFieldManager(){
        public void paint(Graphics graphics) {
            graphics.setBackgroundColor(backgroundcolour);
            graphics.clear();
            super.paint(graphics);
        }
    };

    LabelField lf = new LabelField(msg, Field.FOCUSABLE){
        private XYRect xyrect=new XYRect();
        protected boolean navigationClick(int status, int time){
            Application.getApplication().invokeLater(new Runnable(){
                public void run() {

                }
            });
                return true;
        }
    };
    lf.setPadding(0,0,0,3);
    vfm.add(lf);

   /* LabelField tim = new LabelField(time_, Field.FOCUSABLE){
        private XYRect xyrect=new XYRect();
        protected boolean navigationClick(int status, int time){
            Application.getApplication().invokeLater(new Runnable(){
                public void run() {

                }
            });
                return true;
        }
    };
    tim.setFont(Font.getDefault().derive( Font.PLAIN,5, Ui.UNITS_pt));
    tim.setPadding(3,3,0,0);
    vfm.add(tim);*/
    // set the pin point in the map 

    hfm.add(vfm);

    add(hfm);

    setPadding(0,0,0,0);
    setMargin(0, 0, 0, 0);
}


protected void paintBackground(Graphics g){
    int oldColor = g.getColor();
    try {
        g.setColor(0xE0E0E0);

    } finally {
        g.setColor(oldColor);
    }
}


}

创建两个这样的图像。在相应的图像上添加消息。然后,如果您从服务器收到消息,请在屏幕的右侧显示,如果您发送消息,请在左侧显示。是的,我确实给出了签名,我考虑过这一点。但是我考虑使用黑莓的原生消息列表视图,因为如果消息内容更长,那么该单元格的高度将相应地改变,因为图像高度将是静态的。像这样创建最终的Border rightBorder=BorderFactory.createBitmapBorder(新的XYEdge(16,23,27,16),Bitmap.getBitmapResource(“bubble_right.png”);最终边框leftBorder=BorderFactory.createBitmapBorder(新的XYEdge(16,16,27,23),Bitmap.getBitmapResource(“bubble_left.png”);然后是field.setOrder(rightBorder或leftBorder);如果不是本机消息视图,我们可以在android中为blackberry使用类似于9补丁的图像吗?我已经尝试了上述代码,但如果文本内容高度增加,气泡仍会重复。因此,我想做一些类似于LabelField lf=new LabelField(“在此处输入长文本”)的事情;final Border chatBorder=BorderFactory.createRoundedBorder(新的XYEdge(16,16,27,23),Color.blueviole,Border.STYLE_FILLED);lf.setBorder(chatBorder);在这里我得到了所需的圆形气泡,唯一的问题是箭头图像,我想我必须找到一种方法将该箭头图像附加到此边框。可以这样做吗?