如何动态的设定imageview动态设置src的大小

13953人阅读
&package com.
import android.app.A
import android.os.B
import android.util.L
import android.view.ViewGroup.LayoutP
import android.widget.ImageV
public class PicTest extends Activity {
& & & & private final String TAG = &Pictrue Test!!!&;
& & & & private ImageV
& & & & private int height = 0;
& & & & private int width = 0;
& & @Override
& & public void onCreate(Bundle savedInstanceState) {
& && &&&super.onCreate(savedInstanceState);
& && &&&setContentView(R.layout.main);
& && &&&image = (ImageView)findViewById(R.id.ImageView01);
& && &&&//height = image.getHeight();
& && &&&//width = image.getWidth();
& && &&&//Log.d(TAG, &height: & + height);
& && &&&//Log.d(TAG, &width: & + width);
& && &&&LayoutP
& && &&&para = image.getLayoutParams();
& && &&&Log.d(TAG, &layout height0: & + para.height);
& && &&&Log.d(TAG, &layout width0: & + para.width);
& && &&&para.height = 300;
& && &&&para.width = 300;
& && &&&image.setLayoutParams(para);
& && &&&Log.d(TAG, &layout height: & + para.height);
& && &&&Log.d(TAG, &layout width: & + para.width);
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:196121次
积分:2311
积分:2311
排名:第11759名
原创:28篇
转载:91篇
评论:37条
阅读:2339
(1)(1)(2)(3)(1)(2)(1)(2)(1)(1)(2)(1)(1)(8)(2)(5)(1)(2)(6)(1)(2)(2)(2)(1)(3)(3)(3)(7)(10)(4)(3)(3)(12)(21)
日常工作的内容查看:2589|回复:3
助理工程师
很多网友可能发现在layout.xml文件中定义了ImageView的绝对大小后,无法动态修改以后的大小显示,其实Android平台在设计UI控件时考虑到这个问题,为了适应不同的Drawable可以通过在xml的相关ImageView中加入android:scaleType=&fitXY& 这行即可,但因为使用了缩放可能会造成当前UI有所变形。使用的前提是限制ImageView所在的层,可以使用一个内嵌的方法限制显示。
助理工程师
这事有点难
助理工程师
好好学习一下
助理工程师
学习一下......30529人阅读
Android(68)
国内某金融企业的一道面试题:如何在代码中获得一个ImageVIew的高度和宽度?
相信很大一部分人,会直接想到用imageview.getWidth() 和&imageview.getHeight() 来获得,其实不然。
我们可以自己写个程序来跑一下,当我们放置一张图片在imageView中,并且设置了它的高度和宽度,我们不妨在日志控制台输出看一下,
Log.i(&MainActivity&, &宽度:&+String.valueOf(imageView.getWidth()));
Log.i(&MainActivity&, &高度:&+String.valueOf(imageView.getHeight()));
输出结果如下:
是不是很恼火呀,结果就是这样。
那么究竟该如何获取图片的高度和宽度呢? 其实,我们可以通过构建一个BItMap对象出来,这个BItMap就是从我们的那种图片资源转换而来,bitmap对象中的getWidth() 和getHeight()可以获得位图的大小,代码例子如下:
ImageView imageView = (ImageView)findViewById(R.id.imageView);
Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.newscar);
Log.i(&MainActivity&, &宽度:&+String.valueOf(bitmap.getWidth()));
Log.i(&MainActivity&, &高度:&+String.valueOf(bitmap.getHeight()));
这个时候我们再来看一下日志控制台的输出结果:
Ok,第一个问题我们搞定了(注意:这是原图片的大小,不是我们布局文件中设置的大小)。
接下来我们看一下如何动态设置图片的高度和宽度,这问题比较简单,我们直接使用LayoutParams的对象来进行设置&
代码如下:
ImageView imageView = (ImageView)findViewById(R.id.imageView);
imageView.setImageResource(R.drawable.newscar);
LayoutParams params = imageView.getLayoutParams();
params.height=200;
params.width =100;
imageView.setLayoutParams(params);
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:781861次
积分:6346
积分:6346
排名:第2616名
原创:116篇
转载:33篇
评论:278条
(1)(1)(2)(1)(3)(1)(1)(1)(2)(3)(3)(4)(3)(1)(4)(6)(9)(20)(54)(10)(21)The page is temporarily unavailable
nginx error!
The page you are looking for is temporarily unavailable.
Please try again later.
Website Administrator
Something has triggered an error on your
This is the default error page for
nginx that is distributed with
It is located
/usr/share/nginx/html/50x.html
You should customize this error page for your own
site or edit the error_page directive in
the nginx configuration file
/etc/nginx/nginx.conf.android ImageView设置宽度通过手机屏幕大小,怎么设置ImageView的宽度?比如获取到手机的宽度为480,那么设置ImageView的宽度为240;手机的宽度为320,那么设置ImageView的宽度为160.请问要怎么写?谢谢
半岛旧梦0388
&LinearLayout&xxxx&&&&android:weightSum=&2&&&&&&&ImageView&xxxx&&&&&&&&android:layout_width=&0dp&&&&&&&&&android:layout_height=&wrap_content&&&&&&&&&android:layout_weight=&1&&&/LinearLayout&
我要把屏幕的一半宽度设置为ImageView的高度
你是要设置宽度还是要设置高度啊……比如获取到手机的宽度为480,那么设置ImageView的宽度为240;手机的宽度为320,那么设置ImageView的宽度为160
为您推荐:
其他类似问题
扫描下载二维码

我要回帖

更多关于 动态加载imageview 的文章

 

随机推荐