Android imageView1.基础属性
2016-01-29 11:33
507 查看
1.未缩放的imageView
2.缩放的imageView
3.设置图片的透明度
4.在java代码中设定imageView控件的宽与高
5.在java代码中获取imageView的id
6.使用bitmap获取图片中的部分截屏
代码及注释如下:
activity_main.xml文件
MainActivity.java文件
关于drawable的理解:http://blog.csdn.net/yuzhiyuxia/article/details/8806488 和 http://blog.csdn.net/lmj623565791/article/details/43752383
2.缩放的imageView
3.设置图片的透明度
4.在java代码中设定imageView控件的宽与高
5.在java代码中获取imageView的id
6.使用bitmap获取图片中的部分截屏
代码及注释如下:
activity_main.xml文件
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="fill_parent" android:layout_height="fill_parent" android:fadingEdge="vertical" > <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="com.example.android_imageview001.MainActivity" > <LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="horizontal" > <Button android:id="@+id/next" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="next" /> <Button android:id="@+id/addAlpha" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="addAlpha" /> <Button android:id="@+id/minusAlpha" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="minusAlpha" /> </LinearLayout> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="未缩放的imageView" /> <ImageView android:id="@+id/imageView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:scaleType="center" android:src="@drawable/image001" android:layout_gravity="center_horizontal"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="缩放的imageView" /> <ImageView android:id="@+id/imageView2" android:layout_width="200dp" android:layout_height="200dp" android:layout_gravity="center_horizontal" android:scaleType="fitCenter" android:src="@drawable/image001" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="第三个imageView" /> <ImageView android:id="@+id/imageView3" android:layout_width="wrap_content" android:layout_height="wrap_content" /> </LinearLayout> </ScrollView>
MainActivity.java文件
package com.example.android_imageview001; import android.support.v7.app.ActionBarActivity; import android.annotation.SuppressLint; import android.graphics.Bitmap; import android.graphics.drawable.BitmapDrawable; import android.os.Bundle; import android.view.MotionEvent; import android.view.View; import android.view.View.OnClickListener; import android.view.View.OnTouchListener; import android.widget.Button; import android.widget.ImageView; import android.widget.LinearLayout; @SuppressLint("NewApi") public class MainActivity extends ActionBarActivity { private ImageView iv1; private ImageView iv2; private ImageView iv3; private Button next; private Button addAlpha; private Button minusAlpha; private int currentImage = 1; private float alpha = 1.0f; int[] images = new int[] { R.drawable.image001, R.drawable.image002, R.drawable.image003, R.drawable.image004 }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); iv1 = (ImageView) findViewById(R.id.imageView1); iv2 = (ImageView) findViewById(R.id.imageView2); iv3 = (ImageView) findViewById(R.id.imageView3); next = (Button) findViewById(R.id.next); addAlpha = (Button) findViewById(R.id.addAlpha); minusAlpha = (Button) findViewById(R.id.minusAlpha); //在java代码中设定ImageView控件的宽和高 iv1.setLayoutParams(new LinearLayout.LayoutParams(200, 200)); next.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { //设置ImageView控件的id iv2.setImageResource(images[++currentImage % images.length]); } }); OnClickListener onClickListener = new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub if(v == addAlpha){ alpha += 0.1f; } if(v == minusAlpha){ alpha -= 0.1f; } if(alpha >= 1.0f){ alpha = 1.0f; } if(alpha <= 0.0f){ alpha = 0.0f; } //设定ImageView控件的透明度。此处使用新的api,alpha的范围是0到1,float类型。 iv2.setAlpha(alpha); } }; iv2.setOnTouchListener(new OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { BitmapDrawable bitmapDrawable = (BitmapDrawable) iv2.getDrawable(); //获取图片显示框中的位图。 Bitmap bitmap = bitmapDrawable.getBitmap(); //bitmap图片实际大小与iv2的缩放比例。 double scale = bitmap.getWidth() / 480.0; // 获取需要显示的图片的开始点 。 int x = (int) (event.getX() * scale); int y = (int) (event.getY() * scale); if (x + 120 > bitmap.getWidth()) { x = bitmap.getWidth() - 120; } if (y + 120 > bitmap.getHeight()) { y = bitmap.getHeight() - 120; } //显示图片到指定的区域 iv3.setImageBitmap(Bitmap.createBitmap(bitmap, x, y, 120, 120)); iv3.setAlpha(alpha); return false; } }); addAlpha.setOnClickListener(onClickListener); minusAlpha.setOnClickListener(onClickListener); } }
关于drawable的理解:http://blog.csdn.net/yuzhiyuxia/article/details/8806488 和 http://blog.csdn.net/lmj623565791/article/details/43752383
相关文章推荐
- Android apk 加密方式
- Android-Universal-Image-Loader三大组件DisplayImageOptions、ImageLoader、ImageLoaderConfiguration详解
- Android 基础之 TextView运用
- android 系统主界面底部工具栏上的图标显示与修改
- Android之传感器(二)加速度传感器
- Android监听手机电话状态与发送邮件通知来电号码的方法(基于PhoneStateListene实现)
- android 怎么判断自定义的控件的显示状态(隐藏、显示)
- ubuntu 上安装kivy
- AndroidStudio中使用开源框架android-gif-drawable
- Android之传感器(一)光照传感器
- android项目中出现的错误
- 详解Android自定义控件属性TypedArray以及attrs
- android实现仿QQ登陆界面的多账号保存
- 4000 android 有确认和取消按钮的 AlertDialog 弹出的使用说明
- Android Studio导入Fresco
- Android实现计时与倒计时(限时抢购)的几种方法
- Android开发常用的adb命令整理
- Android检测手机中存储卡及剩余空间大小的方法(基于Environment,StatFs及DecimalFormat)
- Android SQLiteDatabase 数据库存储
- Android ImageView(scaleType属性)图片按比例缩放