<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                #### 6.2.1 BitmapDrawable 這幾乎是最簡單的Drawable了,它表示的就是一張圖片。在實際開發中,我們可以直接引用原始的圖片即可,但是也可以通過XML的方式來描述它,通過XML來描述的BitmapDrawable可以設置更多的效果,如下所示: <? xml version="1.0" encoding="utf-8"? > <bitmap xmlns:android="http://schemas.android.com/apk/res/android" android:src="@[package:]drawable/drawable_resource" android:antialias=["true" | "false"] android:dither=["true" | "false"] android:filter=["true" | "false"] android:gravity=["top" | "bottom"|"left"|"right" | "center_vertical" | "fill_vertical"|"center_horizontal" | "fill_horizontal" | "center" | "fill" | "clip_vertical" | "clip_horizontal"] android:mipMap=["true" | "false"] android:tileMode=["disabled" | "clamp" | "repeat" | "mirror"] /> 下面是它各個屬性的含義。 * android:src 這個很簡單,就是圖片的資源id。 * android:antialias * 是否開啟圖片抗鋸齒功能。開啟后會讓圖片變得平滑,同時也會在一定程度上降低圖片的清晰度,但是這個降低的幅度較低以至于可以忽略,因此抗鋸齒選項應該開啟。 * android:dither 是否開啟抖動效果。當圖片的像素配置和手機屏幕的像素配置不一致時,開啟這個選項可以讓高質量的圖片在低質量的屏幕上還能保持較好的顯示效果,比如圖片的色彩模式為ARGB8888,但是設備屏幕所支持的色彩模式為RGB555,這個時候開啟抖動選項可以讓圖片顯示不會過于失真。在Android中創建的Bitmap一般會選用ARGB8888這個模式,即ARGB四個通道各占8位,在這種色彩模式下,一個像素所占的大小為4個字節,一個像素的位數總和越高,圖像也就越逼真。根據分析,抖動效果也應該開啟。 * android:filter 是否開啟過濾效果。當圖片尺寸被拉伸或者壓縮時,開啟過濾效果可以保持較好的顯示效果,因此此選項也應該開啟。 * android:gravity 當圖片小于容器的尺寸時,設置此選項可以對圖片進行定位。這個屬性的可選項比較多,不同的選項可以通過“|”來組合使用,如表6-1所示。 :-: 表6-1 gravity屬性的可選項 ![](https://img.kancloud.cn/b2/54/b25434c71ef2aa71f536787514818b47_1351x614.png) * android:mipMap 這是一種圖像相關的處理技術,也叫紋理映射,比較抽象,這里也不對其深究了,默認值為false,在日常開發中此選項不常用。 * android:tileMode 平鋪模式。這個選項有如下幾個值:["disabled" | "clamp" | "repeat" | "mirror"],其中disable表示關閉平鋪模式,這也是默認值,當開啟平鋪模式后,gravity屬性會被忽略。這里主要說一下repeat、mirror和clamp的區別,這三者都表示平鋪模式,但是它們的表現卻有很大不同。repeat表示的是簡單的水平和豎直方向上的平鋪效果;mirror表示一種在水平和豎直方向上的鏡面投影效果;而clamp表示的效果就更加奇特,圖片四周的像素會擴展到周圍區域。下面我們看一下這三者的實際效果,通過實際效果可以更好地理解不同的平鋪模式的區別,如圖6-2所示。 :-: ![](https://img.kancloud.cn/d0/d2/d0d2bf1db671cdf14ee82ec031356acb_1359x512.png) 圖6-2 平鋪模式下的圖片顯示效果 接下來介紹NinePatchDrawable,它表示的是一張.9格式的圖片,.9圖片可以自動地根據所需的寬/高進行相應的縮放并保證不失真,之所以把它和BitmapDrawable放在一起介紹是因為它們都表示一張圖片。和BitmapDrawable一樣,在實際使用中直接引用圖片即可,但是也可以通過XML來描述.9圖,如下所示。 <? xml version="1.0" encoding="utf-8"? > <nine-patch xmlns:android="http://schemas.android.com/apk/res/android" android:src="@[package:]drawable/drawable_resource" android:dither=["true" | "false"] /> 上述XML中的屬性的含義和BitmapDrawable中的對應屬性的含義是相同的,這里就不再描述了,另外,在實際使用中發現在bitmap標簽中也可以使用.9圖,即BitmapDrawable也可以代表一個.9格式的圖片。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看