android - Change width of a ListView item(row)? -
i have listview
every row shows different percentage.
and wanna change 1 of inner layouts width (inside inflated counterview
) purpose .
for example:
if first value item in listview
10% width set 10px too
if second value item 50% width change 50px too
how can ?
i tried these codes doesn't work , width
doesn't change: (i defined match_parent
width layout
inside xml
, wanna change programmatically)
public class myadapterscores extends baseadapter { @override public view getview(int position, view convertview, viewgroup parent) { if (convertview == null) { layoutinflater layoutinflater = (layoutinflater) context.getsystemservice(context.layout_inflater_service); convertview = layoutinflater.inflate(r.layout.scores_layout,null,true); //i wanna change 'relativelayoutrightsqure' width inside 'scores_layout' view layout = convertview.findviewbyid(r.id.relativelayoutrightsqure); viewgroup.marginlayoutparams p = (viewgroup.marginlayoutparams) layout.getlayoutparams(); //variable precentage has value p.width=precentage ; layout.requestlayout();
you can't set width percentage think. haven't tested solution, try out! might work!
one solution set width percentage of total width of display maybe:
windowmanager wm = (windowmanager) getcontext().getsystemservice(context.window_service); display display = wm.getdefaultdisplay(); point size = new point(); display.getsize(size); int layoutwidth = size.x * (percentage / 100)
then can use variable "layoutwidth" set width on layout want.
Comments
Post a Comment