android中imageview
㈠ android中ImageView放大和缩小相关问题
1、如果只是想根据图片的大小来改变imageview的大小直接把imageview的属性设置为
android:layout_width="match_parent"
android:layout_height="wrap_content"
2、如果想要把整个imageview放大,用
放大的动画把你这个imageview放大
scaleanimation
animation
=new
scaleanimation(0.0f,
1.4f,
0.0f,
1.4f,
animation.relative_to_self,
0.5f,
animation.relative_to_self,
0.5f);
animation.setration(2000);//设置动画持续时间
image.setanimation(animation);
㈡ androidstudio中怎么使用imageview控件
在windows7操作系统下按照如下步骤使用imageView。
1、首先使用Android studio创建一个项目,项目结构如下图:
4、添加成功
㈢ android中的imageview怎么设置上下左右的滑动事件
private float mPosX;
private float mPosY;
private float mCurrentPosX;
private float mCurrentPosY;
private ImageView imageview;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
imageview = (ImageView) findViewById(R.id.imageview);
imageview.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()) {
// 按下
case MotionEvent.ACTION_DOWN:
mPosX = event.getX();
mPosY = event.getY();
break;
// 移动
case MotionEvent.ACTION_MOVE:
mCurrentPosX = event.getX();
mCurrentPosY = event.getY();
if (mCurrentPosX - mPosX > 0 && Math.abs(mCurrentPosY - mPosY) < 10)
Log.e("", "向右");
else if (mCurrentPosX - mPosX < 0 && Math.abs(mCurrentPosY - mPosY) < 10)
Log.e("", "向左");
else if (mCurrentPosY - mPosY > 0 && Math.abs(mCurrentPosX - mPosX) < 10)
Log.e("", "向下");
else if (mCurrentPosY - mPosY < 0 && Math.abs(mCurrentPosX - mPosX) < 10)
Log.e("", "向上");
break;
// 拿起
case MotionEvent.ACTION_UP:
break;
default:
break;
}
return true;
}
});
}
㈣ android中的ImageView显示默认图片
android中的ImageView显示默认图片有两种方式:
在xml中增加图片的引用,android:src="@drawable/image"即可。
在java代码中设置
ImageView image = (ImageView) findViewById(R.id.image);
image.setImageResource(R.drawable.image);
注意,需要先将image图片,放到res/drawabl目录下。
㈤ 怎样设置android中ImageView为不显示
可以直接调用View.setVisibility来指定imageView显示还是不显示。
android 属性android:visibility及 view的setVisibility方法值的意思:
此属性意思是此视图是否显示,
例如RelativeLayout中android:visibility="gone"
其有三个属性:
visible显示;
invisible显示黑背景条;
gone不显示
在类中,可以设置其显示与否,setVisibility(View.GONE);不显示setVisibility(View.VISIBLE);显示
android view的setVisibility方法值的意思 :
有三个值
VISIBLE
INVISIBLE
GONE
常量值为VISIBLE意思是可见的
常量值为INVISIBLE,意思是不可见的
常量值为GONE,意思是不可见的,而且不占用布局空间
㈥ Android开发中ImageView里的Bitmap很模糊,怎么解决
目标和容器不一致导致的。
1、设置imageview的scaleType为center,即不随着控件的大小而去硬性适配;
2、确保所得bitmap即图片有预期的大小;
3、设置imageview的宽高为wrap,去适应bitmap的大小。
㈦ android 关于imageview的布局文件的设定
可以使用ImageView的Scaletype属于来设置布局,并决定了图片在ImageView上显示时的样子,如进行何种比例的缩放,及显示图片的整体还是部分,等等。
设置的方式包括:
1. 在layout xml中定义android:scaleType="CENTER"
2. 或在代码中调用imageView.setScaleType(ImageView.ScaleType.CENTER);
设置属性的作用:
1. SetScaleType(ImageView.ScaleType.CENTER);
按图片的原来size居中显示,当图片长/宽超过View的长/宽,则截取图片的居中部分显示
2. SetScaleType(ImageView.ScaleType.CENTER_CROP);
按比例扩大图片的size居中显示,使得图片长(宽)等于或大于View的长(宽)
3. setScaleType(ImageView.ScaleType.CENTER_INSIDE);
将图片的内容完整居中显示,通过按比例缩小或原来的size使得图片长/宽等于或小于View的长/宽
4. setScaleType(ImageView.ScaleType.FIT_CENTER);
把图片按比例扩大/缩小到View的宽度,居中显示
5. FIT_START, FIT_END在图片缩放效果上与FIT_CENTER一样,只是显示的位置不同,FIT_START是置于顶部,FIT_CENTER居中,FIT_END置于底部。
6. FIT_XY
不按比例缩放图片,目标是把图片塞满整个View。
㈧ 怎样设置android中ImageView为不显示
在XML文件中设置ImageView.Visibility="GONE"或"INVISIBLE"。或者在java代码文件中设置。
代码:
ImageView.setVisibility(View.GONE),ImageView.setVisibility(View.VISIBLE)。
其中:
1、常量值为VISIBLE,意思是可见的。
2、常量值为INVISIBLE,意思是不可见的。
3、常量值为GONE,意思是不可见的,而且不占用布局空间。
(8)android中imageview扩展阅读
其他属性
一、透明度
1、android:alpha // 0f~1f
2、setAlpha(float alpha); // 0f~1f
3、setAlpha(int alpha); // 0~255,已过时
4、setImageAlpha(int alpha); // API>=16
二、android:adjustViewBounds:设置ImageView是否调整自己的边界来保持所显示图片的长宽比。
三、android:maxHeight:设置ImageView的最大高度。
四、android:maxWidth:设置ImageView的最大宽度。
五、android:scaleType:设置所显示的图片如何缩放或移动以适应ImageView的大小。
㈨ android中如何动态修改ImageView中图片的大小 比如说点击该图片后图片能变大
使用位图(Bitmap)再重新绘制遍
//原位图
Bitmap btm1 = BitmapFactory.decodeResource(Main.this.getResources(), R.drawable.hh);
BitmapDrawable bd1=BitmapDrawable(btm1);
imageView.setBackgroundDrawable(bd1);
放大后 滑动时计算 图片的边是否在屏幕外,如果在屏幕外就可移动,比如 向上滑动,是想看图片下面的部分,此时计算图片的底边是否在屏幕外,如果是,就可以向上移动图片。
Scaletype的设置的方式包括:
1、在layout xml中定义android:scaleType="CENTER"
2、或在代码中调用imageView.setScaleType(ImageView.ScaleType.CENTER);
(9)android中imageview扩展阅读:
根据位深度,可将位图分为1、4、8、16、24及32位图像等。每个像素使用的信息位数越多,可用的颜色就越多,颜色表现就越逼真,相应的数据量越大。
例如,位深度为 1 的像素位图只有两个可能的值(黑色和白色),所以又称为二值位图。位深度为 8 的图像有 2^8(即 256)个可能的值。位深度为 8 的灰度模式图像有 256 个可能的灰色值。
RGB图像由三个颜色通道组成。8 位/通道的 RGB 图像中的每个通道有 256 个可能的值,这意味着该图像有 1600 万个以上可能的颜色值。
有时将带有 8 位/通道 (bpc) 的 RGB 图像称作 24 位图像(8 位 x 3 通道 = 24 位数据/像素)。通常将使用24位RGB组合数据位表示的的位图称为真彩色位图。
㈩ android,程序中如何改变ImageView大小
1、 在布局文件中定义imageview,但不为其设置资源。
<LinearLayout
android:orientation="vertical"
android:layout_below="@id/title_bar"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ImageView
android:id="@+id/topImageview"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>
</LinearLayout>
2、在activity的初始化代码中,初始化imageview 并设定大小:
public void initTopImageView(View view) {
ImageView imageTopview = (ImageView)view.findViewById(R.id.topImageview);
WindowManager windowManager = mParent.getWindowManager();
Display display = windowManager.getDefaultDisplay();
int imageWidth = display.getWidth();
int imageHeight = 0;
BitmapFactory.Options option = new BitmapFactory.Options();
option.inJustDecodeBounds = true;
Bitmap myMap = BitmapFactory.decodeStream(getResources().openRawResource(R.raw.landing_hot_proct_1));
imageHeight = (imageWidth*myMap.getHeight())/myMap.getWidth();
imageTopview.setScaleType(ImageView.ScaleType.FIT_XY);
imageTopview.setLayoutParams(new LinearLayout.LayoutParams(imageWidth,imageHeight));
imageTopview.setImageResource(R.raw.landing_hot_proct_1);
myMap.recycle();
}
在给imageview设置图片资源之前,根据比例关系动态计算图片的宽和高,并设置给imageview.