美文网首页
安卓学习笔记------imageView控件的学习

安卓学习笔记------imageView控件的学习

作者: 天青色等烟雨hhft | 来源:发表于2017-12-23 15:19 被阅读0次
    src属性和background属性的区别:

    ①background通常指的都是背景,而src指的是内容
    ②当使用src填入图片时,是按照图片大小直接填充,并不会进行拉伸,而使用background填入图片,则是会根据ImageView给定的宽度来进行拉伸
    写代码验证了一下

    <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@drawable/collect" />
    
        <ImageView
            android:layout_width="200dp"
            android:layout_height="wrap_content"
            android:background="@drawable/collect" />
    
        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/collect" />
    
        <ImageView
            android:layout_width="200dp"
            android:layout_height="wrap_content"
            android:src="@drawable/collect" />
    
    image.png
    解决拉伸导致变形的方法

    刚才第二张图片因为拉伸导致变形了,可以通过drawable的Bitmap资源文件来完成,然后blackground属性设置为该文件

    <bitmap
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@id/col"
        android:gravity="top"
        android:src="@drawable/collect"
        android:tileMode="disabled" >
    </bitmap>
    

    android:tileMode="disabled" 禁止平铺

    设置透明度

    setAlpha这个属性,只有src时才是有效果的

    adjustViewBounds设置缩放是否保存原图长宽比

    ImageView提供了adjustViewBounds属性,用于设置缩放时是否保持原图长宽比, 单独设置不起作用,需要配合maxWidth和maxHeight属性一起使用.而后面这两个属性也是需要adjustViewBounds为true才会生效.

    android:maxHeight:设置ImageView的最大高度
    android:maxWidth:设置ImageView的最大宽度

    <!-- 正常的图片 -->
        <ImageView
            android:id="@+id/imageView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_margin="5px"
            android:src="@drawable/collect" />
        <!-- 限制了最大宽度与高度,并且设置了调整边界来保持所显示图像的长宽比-->
        <ImageView
            android:id="@+id/imageView2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_margin="5dp"
            android:adjustViewBounds="true"
            android:maxHeight="50dp"
            android:maxWidth="50dp"
            android:src="@drawable/collect" />
    
    image.png
    scaleType设置缩放类型

    fitXY:对图像的横向与纵向进行独立缩放,使得该图片完全适应ImageView,但是图片的横纵比可能会发生改变
    fitStart:保持纵横比缩放图片,知道较长的边与Image的编程相等,缩放完成后将图片放在ImageView的左上角
    fitCenter:同上,缩放后放于中间;
    fitEnd:同上,缩放后放于右下角;
    center:保持原图的大小,显示在ImageView的中心。当原图的size大于ImageView的size,超过部分裁剪处理。
    centerCrop:保持横纵比缩放图片,知道完全覆盖ImageView,可能会出现图片的显示不完全
    centerInside:保持横纵比缩放图片,直到ImageView能够完全地显示图片
    matrix:默认值,不改变原图的大小,从ImageView的左上角开始绘制原图, 原图超过ImageView的部分作裁剪处理

    相关文章

      网友评论

          本文标题:安卓学习笔记------imageView控件的学习

          本文链接:https://www.haomeiwen.com/subject/ykkqgxtx.html