widget - Android set image size programmatically -
how can set image size on widget programmatically? using code change image how can set size?
remoteviews updateviews = new remoteviews(editpreferences.this.getpackagename(), r.layout.widgetmain2); updateviews.setimageviewbitmap(r.id.imageview00, ((bitmapdrawable)editpreferences.this.getresources().getdrawable(r.drawable.normal_black_op100)).getbitmap()); componentname thiswidget = new componentname(editpreferences.this, hellowidget.class); appwidgetmanager manager = appwidgetmanager.getinstance(editpreferences.this); manager.updateappwidget(thiswidget, updateviews);
thanks in advance
it's wide question in fact. there multiple answers it:
usually in layout.xml setting appropriate layout parameters (width, height) , scaletype: http://developer.android.com/reference/android/widget/imageview.html#attr_android:scaletype. handles lot of cases - whenever image set scaling recalculated according it's parameters.
but ned programmatically. more complex because needs take account density of screen , density of bitmap, screen size independent pixel size , on. there 2 points here:
- getting bitmap in right size. depends whether load bitmap resources (it seems do) or whether load manually. if want control size of bitmap, have understand how works - recommend reading http://developer.android.com/guide/practices/screens_support.html , chapter scaling bitmap objects created @ runtime.
- setting bitmap's dimensions on screen. if want on runtime , calculated required size in physical pixels. remember there independent pixels , need convert physical pixels (look @ "density independent pixels" definition , algorithms calculation in http://developer.android.com/guide/practices/screens_support.html . once know physical pixels, can apply layoutparameters imageview. like:
example:
linearlayout.layoutparams layoutparams = new linearlayout.layoutparams(width_physical_pixels, height_physical_pixels); imageview.setlayoutparams(layoutparams);
important! linearlayout here example. should parent class of imageview - layout params of type of object container rather of object set on.
Comments
Post a Comment