首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >鳞片ImageView.MultiScreen

鳞片ImageView.MultiScreen
EN

Stack Overflow用户
提问于 2015-07-19 15:57:48
回答 1查看 45关注 0票数 0

我正在使用这个代码。

代码语言:javascript
运行
复制
    Resources r = MainActivity.ct.getResources();
    float px = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 200,r.getDisplayMetrics());
    View inflatedLayout = getLayoutInflater().inflate(R.layout.list_row_layout, null, false);
    inflatedLayout.findViewById(R.id.thumbImage).getLayoutParams().width *= px / 540;
    inflatedLayout.findViewById(R.id.thumbImage).getLayoutParams().height *= px / 960;

但我有应用程序崩溃。我如何改变宽度和高度我的imageView布局?谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-07-19 18:06:32

代码语言:javascript
运行
复制
Resources r =  getResources();

如果u R调用MAINACTIVITY,则使用此代码,否则只使用上下文值,如下所示

代码语言:javascript
运行
复制
 Context ct;//in class 
Context ct=MainActivity.this;//in oncreate() menthod
Resource r =ct.getResource();//in your code

或者在您的情况下,如果您将上下文ct作为

代码语言:javascript
运行
复制
static Context ct;//in class
ct=MainAcitivity.this;// in oncreate() function

调用您的代码

代码语言:javascript
运行
复制
Resource r=MainAcitivity.ct.getResource();

但是,将上下文存储为静态变量并不是一个很好的做法,除非最后一种选择只能这样使用。

代码语言:javascript
运行
复制
 float px = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 200,r.getDisplayMetrics());
    View inflatedLayout = getLayoutInflater().inflate(R.layout.list_row_layout, null, false);
    inflatedLayout.findViewById(R.id.thumbImage).getLayoutParams().width *= px / 540;
    inflatedLayout.findViewById(R.id.thumbImage).getLayoutParams().height *= px / 960;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31503093

复制
相关文章

相似问题

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