答案 0 :(得分:0)
谢谢Mario Santini。 这是代码:
// costruttore
public Luogo(String libro,String id,String nome,String indirizzo,String lat,String lng,String testo,String pagina,String icona){
this.ID = Integer.parseInt(id.substring(1, id.length()-2));
this.nome=nome.substring(1, nome.length()-2);
this.indirizzo=indirizzo.substring(1, indirizzo.length()-2);
this.lat=Double.parseDouble(lat.substring(1, lat.length()-2));
this.lng=Double.parseDouble(lng.substring(1, lng.length()-2));
this.testo=testo.substring(1, testo.length()-2);
this.libro=libro;
this.pagina=Integer.parseInt(pagina.substring(1, pagina.length()-2));
this.icona=icona.substring(1, icona.length()-2);
}
public void aggiungiLuogoMappa(MapContainer map){
Luogo lg = this;
Coord coord=new Coord(this.lat,this.lng);
EncodedImage icon;
try {
icon =EncodedImage.create("/" + this.icona);
} catch (IOException ex) {
//nel caso di errore aggiungo il marker standard
Style st = new Style();
st.setFgColor(0xff0000);
st.setBgTransparency(0);
FontImage markerImg = FontImage.createMaterial(FontImage.MATERIAL_PLACE, st, Display.getInstance().convertToPixels(1));
icon =EncodedImage.createFromImage(markerImg, false);
}
map.addMarker(icon, coord,this.nome + " - " + this.indirizzo, null, new ActionListener() {
public void actionPerformed(ActionEvent evt) {
Dialog.show(lg.nome, lg.testo + "\n (da: " + lg.libro + ", pag." + lg.pagina + ")", "Chiudi",null);}
});
}
}
如果我把它放在代码中(参见最后一行),\ n效果很好,但我也希望lg.testo可以包装在我需要的地方。 lg.testo来自一个xml文件,如下所示:
答案 1 :(得分:0)
感谢Shai Almog的评论。 这是相关的代码:
Dialog.show(lg.nome, StringUtil.replaceAll(lg.testo,"\\n","\n") + "\n (da: " + lg.libro + ", pag." + lg.pagina + ")", "Chiudi",null);}
它工作正常,我可以根据需要包装XML文件中的文本。
再见 卢卡