android - Set width of custom InfoWindow in Google Maps api v2 -
i created markers on map. when click on them, custom info windows wide screen.
i tried setting layout_width="200dp"
didn't help. tried setting
view.setlayoutparams(new layoutparams(getdipsfrompixel(200), getdipsfrompixel(300)));
i can set width of textviews setting snippetui.setwidth(getdipsfrompixel(200));
layout still remains screen wide.
<?xml version="1.0" encoding="utf-8"?> <linearlayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical" android:background="#ffffff" android:layout_marginleft="30dp" android:layout_marginright="30dp" android:padding="10dp" > <linearlayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal" android:background="#ffffff" android:gravity="center_vertical"> <imageview android:id="@+id/worldmap_infowindow_profileimg" android:layout_width="20dp" android:layout_height="20dp" android:src="@drawable/noimage" /> <textview android:id="@+id/worldmap_infowindow_username" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="to no.2." android:textcolor="#000000" android:textsize="16sp" android:textstyle="bold" android:paddingleft="5dp"/> </linearlayout> <view android:id="@+id/separator" android:background="#ababab" android:layout_width = "fill_parent" android:layout_margintop="3dp" android:layout_marginbottom="3dp" android:layout_height="1dp"/> <textview android:id="@+id/worldmap_infowindow_name" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="see giza pyramids" android:textcolor="#000000" android:textsize="16sp" android:textstyle="bold" /> <textview android:id="@+id/worldmap_infowindow_details" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="it fascinating! it's shame raining, though." android:textcolor="#000000" android:textsize="14sp" android:textstyle="normal" /> </linearlayout>
class:
private class custominfowindowadapter implements infowindowadapter { private view view; public custominfowindowadapter() { view = getlayoutinflater().inflate(r.layout.custom_infowindow, null); } @override public view getinfocontents(marker marker) { if (worldmap.this.mymarker != null && worldmap.this.mymarker.isinfowindowshown()) { worldmap.this.mymarker.hideinfowindow(); worldmap.this.mymarker.showinfowindow(); } return null; } @override public view getinfowindow(final marker marker) { worldmap.this.mymarker = marker; final string title = marker.gettitle(); final textview titleui = ((textview) view.findviewbyid(r.id.worldmap_infowindow_name)); if (title != null) { titleui.settext(title); } else { titleui.settext(""); } final string snippet = marker.getsnippet(); final textview snippetui = ((textview) view.findviewbyid(r.id.worldmap_infowindow_details)); if (snippet != null) { snippetui.settext(snippet); } else { snippetui.settext(""); } return view; } }
if want show custom window fixed size ( height or width ) have make drawable , set background of xml.
i have posted answer here solution.you can refer how works.
Comments
Post a Comment