Listview 黑莓短信对话列表
是否可以在应用程序中实现上述默认的blackberry文本消息对话列表视图。 如果是,我该怎么做?我对此一无所知,也找不到任何进一步的线索。 我将从我的应用服务器获取上述消息。 请帮忙 我以前喜欢这些图片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
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);在这里我得到了所需的圆形气泡,唯一的问题是箭头图像,我想我必须找到一种方法将该箭头图像附加到此边框。可以这样做吗?