图像视图以编程方式获取int值但在某个时间高度以double计算,因此任何人都有建议哪一个过程。我搜索但没有得到确切的解决方案
这是我的代码:
//--------calculate width and height
int final_width;
double final_height;
final_width = width - 40;
final_height = ((final_width) * (0.75));
Log.e("final height",""+final_height);
imageView.getLayoutParams().width = Utility.pxToDp(final_width,mContext);
imageView.getLayoutParams().height = Utility.pxToDp(final_height,mContext);
答案 0 :(得分:0)
也许
final_height=final_height+final_height
这就是我要做的就是在身高上获得2倍的效果。
答案 1 :(得分:0)
int的最大范围为2147483647 -2147483648。所以int就足够了,你不需要双倍。否则,您可以将值转换为int。
int intVal = (int) Math.floor(val);
其中val的值=某些浮点数。
答案 2 :(得分:0)
最后,我得到的解决方案是帮助任何人的代码
DisplayMetrics displayMetrics = new DisplayMetrics();
mContext.getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
int height = displayMetrics.heightPixels;
int width = displayMetrics.widthPixels;
Log.e("width",width+""+height);
//--------calculate width and height
int final_width;
double final_height;
final_width = width - 40;
final_height = ((final_width) * (0.75));
int height_final = (int) (final_height + 0.5f);
Log.e("final height",""+height_final);
holder.homeFragmentBusinessImageView.getLayoutParams().width = final_width;
holder.homeFragmentBusinessImageView.getLayoutParams().height = height_final;
答案 3 :(得分:0)
您可以尝试使用此代码,通过编程方式移动布局高度。
private void moveOffScreen() {
DisplayMetrics displaymetrics = new DisplayMetrics();
this.getWindowManager().getDefaultDisplay().getMetrics(displaymetrics);
int screenHeight = displaymetrics.heightPixels;
int offset = (int) (screenHeight * 0.50); /* percent to move */
LinearLayout.LayoutParams rlParams =
(LinearLayout.LayoutParams) mChart.getLayoutParams();
rlParams.setMargins(0, 0, 0, -offset);
mChart.setLayoutParams(rlParams);
}