图片(imageView)
图片(imageView):
常用属性:
android:scaleType(图片显示的格式)
android:src(图片源,一般使用的资源)
android:scaleType属性的常用取值
0.matrix:用矩阵来绘图
1.fitXY:拉伸图片(不按比列)以填充View的宽高
2.fitStart:按比例拉伸图片,拉伸后图片的高度为View的高度,且显示在View的上边
3.fitCenter:按比例拉伸图片,拉伸后图片的高度为View的高度,且显示在View的中间
4.fitEnd:按比例拉伸图片,拉伸后图片的高度为View的高度,且显示在View的下边
5.center:按原图大小显示图片,但图片的宽高大于View的宽高时,截图图片中间部分显示
6.centerCrop:按比例放大原图直至等于某边View的宽高显示
7.centerInside:当原图宽高等于View的宽高的时候,按原图的大小居中显示,反之将原图缩放至view的宽高居中显示。
下面我们来看具体的代码实现:
1.Activity
//imageView显示图片视图
public class ImageViewActivity extends Activity { private Context context;
private ImageView imageView;
private Button previousButton;
private Button nextButton;
private int currentIndex = 0;
//这里你可以随便找一些图片来试试
private int[] images = new int[]{
R.drawable.shangjinlieren,
R.drawable.bulong,
R.drawable.buxiangzhiren,
R.drawable.gailun,
R.drawable.guanghuinvlang,
R.drawable.laoshu,
R.drawable.liulangfashi,
R.drawable.longxuewuji,
R.drawable.manzuzhiwang,
R.drawable.mishizhiya,
R.drawable.shamohuangdi,
R.drawable.shengqiangyouxia,
R.drawable.shuguangnvshen,
R.drawable.wujijiansheng,
R.drawable.wushuangjianji,
R.drawable.zhaoxin
}; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.image_view); init();
addAction();
} private void init(){
context = this;
previousButton = (Button)findViewById(R.id.previousButtonId);
nextButton = (Button)findViewById(R.id.nextButtonId);
imageView = (ImageView)findViewById(R.id.imageViewId);
imageView.setImageResource(images[currentIndex]);
} private void addAction(){
previousButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
if(currentIndex==0){
Toast.makeText(context, "已经是第一张了...", Toast.LENGTH_SHORT).show();
}else{
currentIndex--;
imageView.setImageResource(images[currentIndex]);
setScaleType();
}
}
}); nextButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
if(currentIndex==images.length-1){
Toast.makeText(context, "已经是最后一张了...", Toast.LENGTH_SHORT).show();
}else{
currentIndex++;
imageView.setImageResource(images[currentIndex]);
setScaleType();
}
}
});
}
//图片显示的格式
private void setScaleType(){
if(currentIndex==0){
imageView.setScaleType(ImageView.ScaleType.MATRIX);
Toast.makeText(context, "ScaleType=MATRIX", Toast.LENGTH_SHORT).show();
}
if(currentIndex==1){
imageView.setScaleType(ImageView.ScaleType.FIT_XY);
Toast.makeText(context, "ScaleType=FIT_XY", Toast.LENGTH_SHORT).show();
}
if(currentIndex==2){
imageView.setScaleType(ImageView.ScaleType.FIT_START);
Toast.makeText(context, "ScaleType=FIT_START", Toast.LENGTH_SHORT).show();
}
if(currentIndex==3){
imageView.setScaleType(ImageView.ScaleType.FIT_CENTER);
Toast.makeText(context, "ScaleType=FIT_CENTER", Toast.LENGTH_SHORT).show();
}
if(currentIndex==4){
imageView.setScaleType(ImageView.ScaleType.FIT_END);
Toast.makeText(context, "ScaleType=FIT_END", Toast.LENGTH_SHORT).show();
}
if(currentIndex==5){
imageView.setScaleType(ImageView.ScaleType.CENTER);
Toast.makeText(context, "ScaleType=CENTER", Toast.LENGTH_SHORT).show();
}
if(currentIndex==6){
imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
Toast.makeText(context, "ScaleType=CENTER_CROP", Toast.LENGTH_SHORT).show();
}
if(currentIndex==7){
imageView.setScaleType(ImageView.ScaleType.CENTER_INSIDE);
Toast.makeText(context, "ScaleType=CENTER_INSIDE", Toast.LENGTH_SHORT).show();
}
} }
2.xml文件布局
<?xml version="1.0" encoding="utf-8"?>
<!-- 显示图片视图的页面 -->
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/linearLayoutId"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="5dp" > <ImageView
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_gravity="center_horizontal"
android:layout_marginTop="20dp"
android:background="@color/yellow"
android:src="@drawable/mishizhiya" /> <ImageView
android:id="@+id/imageViewId"
android:layout_width="100dp"
android:layout_height="150dp"
android:layout_gravity="center_horizontal"
android:layout_marginTop="20dp"
android:background="@color/yellow" /> <LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:gravity="center_horizontal"
android:orientation="horizontal" > <Button
android:id="@+id/previousButtonId"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="上一张" /> <Button
android:id="@+id/nextButtonId"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="下一张" />
</LinearLayout> </LinearLayout>
3.效果显示图:

图片(imageView)的更多相关文章
- Android圆形图片--ImageView
[ RoundImageView.java ] package com.dxd.roundimageview; import android.content.Context; import andro ...
- Android开发之自定义圆角矩形图片ImageView的实现
android中的ImageView只能显示矩形的图片,这样一来不能满足我们其他的需求,比如要显示圆角矩形的图片,这个时候,我们就需要自定义ImageView了,其原理就是首先获取到图片的Bitmap ...
- iOS 设置图片imageView圆角——对图片进行裁剪
以前设置图片圆角总是把imageView设置成圆形,然后设置maskToBounds为YES,其实这样处理很消耗性能,图片多了之后比较卡,最好将图片进行裁剪后显示:这里有个分类可以用: UIImage ...
- Android开发之自定义圆角矩形图片ImageView的实现 - Jamy Cai
android中的ImageView只能显示矩形的图片,这样一来不能满足我们其他的需求,比如要显示圆角矩形的图片,这个时候,我们就需要自定义ImageView了,其原理就是首先获取到图片的Bitmap ...
- 圆形图片 ImageView
package com.example.m_evolution; import android.content.Context; import android.graphics.Bitmap; imp ...
- Anfroid 在界面中显示图片 ImageView
ImageView1.什么是ImageView是显示图片的一个控件2.ImageView属性android:src ImageView的内容颜色 android:background ImageVie ...
- 在imageView依次加入7个手势, 1.点击哪个button,往imageView上加入哪个手势.(保证视图上仅仅有一个手势). 2.轻拍:点击视图切换美女图片.(imageView上首先展示的美女
// // ControlView.h // HomeworkGestureRecognizer // // Created by lanouhn on 14-8-27. // Copyright ( ...
- android 实现ImageView按压效果和解决背景图片拉申问题
建立一个.XML文件,名为:image_tab_bg.xml <?xml version="1.0" encoding="utf-8"?> < ...
- 03 ImageView 图片
四 ImageView 父类 : view >概念:展示图片的控件 >属性: <!-- android:adjustViewBounds=&qu ...
- ImageView显示网络上的图片
ImageView显示网络上的图片 一.简介 二.方法 1)ImageView显示网络上的图片方法 第一步:从网络上下载图片 byte[] byteArr = downImage();//这个是自己写 ...
随机推荐
- mysql.sock文件丢失被删除解决方法
Mysql有两种连接方式: (1),TCP/IP (2),socket 对mysql.sock来说,其作用是程序与mysqlserver处于同一台机器,发起本地连接时可用. 例如你无须定义连接host ...
- 01-django项目环境搭建
一.Web应用框架----Django http服务器:用来接受用户请求,并将请求转发给web应用框架进行处理. Web应用框架处理完以后再发送给http服务器,http服务器再返回给用户 二.工具准 ...
- .Net Core 发布异常 An assembly specified in the application
在Core 2.0站点发布时.. DotNet WW.kkkk.dll 报错..报文内容如下: Error: An assembly specified in the application depe ...
- Mono For Android中完美使用百度地图SDK(v2.1.2&v2.1.3)(转)
在Xamarin Mono For Android的开发中,如果要使用第三方的jar,就必须进行绑定.通过创建Java Bindings Library项目来自动生成C#到java的代码映射代码,最终 ...
- (转)Mysql数据库之Binlog日志使用总结
使用mysqlbinlog提取二进制日志 原文:http://blog.csdn.net/leshami/article/details/41962243 MySQL binlog日志记录了MySQL ...
- WPF EventAggregator(基于EventAggregator的事件发布及订阅)
一.EventAggregator简介 EventAggregator是Prism中专门处理ViewModel与ViewModel之间事件传递的类对象,它提供了针对事件的发布方法和订阅方法,所以可以非 ...
- shell -- sample -- 关闭tomcat
#!/bin/bash process_name="org.apache.catalina.startup.Bootstrap" shutdown_call= function s ...
- http协议--文章一
一 原理区别 一般在浏览器中输入网址访问资源都是通过GET方式:在FORM提交中,可以通过Method 指定提交方式为GET或者POST,默认为GET提交 Http定义了与服务器交互的不同方法,最基本 ...
- Comet事件分析
简介[ Introduction ] 使用APR或者NIO API作为连接器的基础,Tomcat能够提供一些在阻塞IO之上的有效扩展,用于支持Servlet API. [ With usage of ...
- PTA (Advanced Level) 1023 Have Fun with Numbers
Have Fun with Numbers Notice that the number 123456789 is a 9-digit number consisting exactly the nu ...