Conversion between android dp and px, androidpx
During development, you may need to dynamically set the widget size.
For example, set the width for a gridview:
LinearLayout.LayoutParams linearParams2 = (LinearLayout.LayoutParams)head_gridView.getLayoutParams(); int realwidth = Utils.Dp2Px(context, 32);linearParams2.width=(headAdapter.getCount())*(realwidth); linearParams2.height=30; head_gridView.setLayoutParams(linearParams2);
At this time, we directly set a fixed number for the width, which is processed as pixels, and the effect may be different from what we want.
At this time, we only need to convert the dp px. The Code is as follows:
/*** Convert dp to px * @ param context Context object * @ param dp value * @ return px value **/public static int Dp2Px (context, float dp) {final float scale = context. getResources (). getDisplayMetrics (). density; return (int) (dp * scale + 0.5f );} /** convert px to dp * @ param context Context object * @ param px pixel value * @ return dp value **/public static int Px2Dp (context, float px) {final float scale = context. getResources (). getDisplayMetrics (). density; return (int) (px/scale + 0.5f );}
Copyright Disclaimer: This article is an original article by the blogger and cannot be reproduced without the permission of the blogger.