首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用代码设置ImageView最大高度

使用代码设置ImageView最大高度
EN

Stack Overflow用户
提问于 2015-12-17 19:33:30
回答 2查看 770关注 0票数 0

我想将Max Height设置为Imageview,它可以在加载图像时使用。最初,我在XML中设置了android:height="wrap_content",以便为其他视图腾出空间。但在图像加载后,有时它会覆盖整个手机屏幕,我看不到其他视图,我想将高度限制在某个特定的值。求求你!!任何帮助都将不胜感激..干杯

EN

回答 2

Stack Overflow用户

发布于 2015-12-17 19:50:23

描述有关显示器的一般信息的结构,例如显示器的大小、密度和字体缩放。

代码语言:javascript
运行
复制
     DisplayMetrics metrics = getResources().getDisplayMetrics();

        int DeviceTotalWidth = metrics.widthPixels;
        int DeviceTotalHeight = metrics.heightPixels;


       /*
        *
        * Adding  Height Respect To Device
        * */

     ImageView  ImageViewObj=(ImageView)findViewById(R.id.ImageViewId);
     ImageViewObj.getLayoutParams().height= (int) (DeviceTotalHeight);
票数 2
EN

Stack Overflow用户

发布于 2015-12-17 19:42:10

获取屏幕高度,并使用它来设置一些比例,如Sunny所说。

代码语言:javascript
运行
复制
/* get the screen height in pixels */
public static int getScreenHeight(WindowManager windowManager) {
    Display display = windowManager.getDefaultDisplay();
    Point point = new Point();
    display.getSize(point);
    return point.y;
}
/* take an imageview, and set its height to desired float ratio */
public static void setImageHeight(Activity activity, ImageView imageView, float ratio) {
    int h = getScreenHeight(activity.getWindowManager());
    imageView.getLayoutParams().height = (int)(h*ratio);
}

然后在onCreate(....)中,尝试执行以下操作

代码语言:javascript
运行
复制
ImageView imageView = (ImageView) findViewById(R.id.whatever);
setImageHeight(imageView, 0.4f); /* 40% */
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34333561

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档