<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Android | 玩轉(zhuǎn)ImageView,使用ScaleType屬性詳解

          共 1927字,需瀏覽 4分鐘

           ·

          2021-05-18 18:32

          在我們平時的開發(fā)過程中,可以說圖片展示是每個App必備的,所以我們會用到ImageView圖片控件,對于每個Android開發(fā)者來說,這已經(jīng)非常熟悉了,那有童鞋就會問了:這還有什么好講的呢?事實確實是這樣嗎?


          那我問問你,你確定對ImageView控件的每個屬性都了如指掌了嗎?,記得之前面試的時候,很多面試官很喜歡問ScaleType屬性的使用,這就考察你是否真的理解了。之前我也并沒有在意這個屬性的使用,以為只會在面試的時候才需要用到,事實是我錯了,在最近的開發(fā)過程中,使用了大量的圖片展示商品的圖片,而且不同的模塊,圖片的展示還需要不一樣,那么這個時候ScaleType屬性就發(fā)揮作用了,可是這個時候突然發(fā)現(xiàn)自己的理解也有點模糊,所以還是有必要重新理解一下這個屬性的用法的,下面我們來看看詳解吧。


          當(dāng)我們設(shè)置ImageView的ScaleType屬性時,開發(fā)工具中會彈出以下的選項讓你選擇:



          首先我們設(shè)置ImageView控件填充整個屏幕:

          <ImageView        android:layout_width="match_parent"        android:layout_height="match_parent"        android:background="#00c6a6"/>


          這個是還沒有設(shè)置ScaleType屬性的效果圖:



          再來看看我們需要加載的圖片的原圖,準備了兩張不同尺寸的原圖:


          大圖



          小圖



          那我們來看看每個選項的效果:

          android:scaleType=“center”


          1、當(dāng)原圖的size小于ImageView的size時,保持原圖的大小,顯示在ImageView的中心


          2、當(dāng)原圖的size大于ImageView的size時,多出來的部分被截掉




          android:scaleType=“center_inside”

          以原圖正常顯示為目的:


          1、當(dāng)原圖的size小于ImageView的size時,不做處理居中顯示圖片



          2、當(dāng)原圖的size大于ImageView的size時,就按照比例縮小原圖的寬高,居中顯示在ImageView中


          android:scaleType=“center_crop”

          以原圖填滿ImageView為目的:


          1、當(dāng)原圖的size小于ImageView的size時,則按比例拉升原圖的寬和高,填充ImageView居中顯示。



          2、如果原圖size大于ImageView的size,則與center_inside一樣,按比例縮小,居中顯示在ImageView上



          android:scaleType=“matrix”

          不改變原圖的大小,從ImageView的左上角開始繪制,超出部分做剪切處理


          1、當(dāng)原圖的size小于ImageView的size時



          2、當(dāng)原圖的size大于ImageView的size時



          androd:scaleType=“fit_xy”

          把圖片按照指定的大小在ImageView中顯示,拉伸顯示圖片,不保持原比例,填滿ImageView.


          1、當(dāng)原圖的size小于ImageView的size時,清晰度看起來比較模糊。



          2、當(dāng)原圖的size大于ImageView的size時,清晰度看起來比較清晰




          android:scaleType=“fit_start”

          把原圖按照比例放大縮小到ImageView的高度,顯示在ImageView的start(前部/上部)


          1、當(dāng)原圖的size小于ImageView的size時,清晰度看起來比較模糊



          2、當(dāng)原圖的size大于ImageView的size時,清晰度看起來比較清晰




          android:sacleType=“fit_center”

          把原圖按照比例放大縮小到ImageView的高度,顯示在ImageView的center(中部/居中顯示)


          1、當(dāng)原圖的size小于ImageView的size時,清晰度看起來比較模糊



          1、當(dāng)原圖的size大于ImageView的size時,清晰度看起來比較清晰




          android:scaleType=“fit_end”

          把原圖按照比例放大縮小到ImageView的高度,顯示在ImageVIew的end(后部/尾部/底部)


          1、當(dāng)原圖的size小于ImageView的size時,清晰度看起來比較模糊



          2、當(dāng)原圖的size大于ImageView的size時,清晰度看起來比較清晰



          到這里就全部解析完了

          瀏覽 76
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  中文字幕免费AV | 人人草人人摸人人看 | 日本一区二区三区久久久久久久久不卡免费 | 一级a一级a爰片免费免免小说 | 久操视频免费看 |