最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android實(shí)現(xiàn)波浪線效果(xml bitmap)

 更新時(shí)間:2020年08月26日 13:47:55   作者:lwklan  
這篇文章主要介紹了Android xml bitmap實(shí)現(xiàn)波浪線效果,制作過(guò)程簡(jiǎn)單,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

我們要實(shí)現(xiàn)的效果如下:

在這之前先帶大家了解一下xml bitmap,何為XML Bitmap?

XML Bitmap 是一個(gè)用XML定義的文件放在資源目錄,定義的對(duì)象是圖片,為bitmap定義別名,這個(gè)文件可以給bitmap定義一些額外的屬性。例如:抖動(dòng)。

1、文件存放位置

res/drawable/filename.xml

2、語(yǔ)法

<?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:tileMode=["disabled" | "clamp" | "repeat" | "mirror"] />

例子:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
 xmlns:tools="http://schemas.android.com/tools" 
 android:layout_width="match_parent" 
 android:layout_height="match_parent" 
 tools:context=".MainActivity" > 
 <!-- 與默認(rèn)情況(@drawable/btn_default_pressed_holo_light)有差別 --> 
 <Button 
  android:layout_width="wrap_content" 
  android:layout_height="wrap_content" 
  android:layout_centerHorizontal="true" 
  android:layout_centerVertical="true" 
  android:background="@drawable/bm" 
  android:text="sssssssssssssssssss" /> 
 
</RelativeLayout> 

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns:tools="http://schemas.android.com/tools"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 tools:context=".MainActivity" >
 <!-- 與默認(rèn)情況(@drawable/btn_default_pressed_holo_light)有差別 -->
 <Button
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:layout_centerHorizontal="true"
  android:layout_centerVertical="true"
  android:background="@drawable/bm"
  android:text="sssssssssssssssssss" />

</RelativeLayout>

效果圖:

 默認(rèn)(@drawable/btn_default_pressed_holo_light):

 

引用(\@drawable/bm):

從截圖上就可以看出來(lái)差別。

 titileMode="repeat":

之后找了一些關(guān)于實(shí)現(xiàn)波浪線的方法,總感覺(jué)不大滿意,常見(jiàn)的方法分享給大家:

1、直接搞一個(gè)這樣的波浪線的切圖

這種方式最簡(jiǎn)單,但是劣勢(shì)也非常明顯,如果view的寬度過(guò)大,則會(huì)出現(xiàn)圖片變形,如下圖所示:

如果過(guò)小則如下:

要求不高的話,這樣勉強(qiáng)可以蒙混過(guò)關(guān),但是追求完美的話,這樣的效果顯然很不給力

2、自定義控件繪制

這個(gè)方法的確可以達(dá)到不錯(cuò)的效果,但是實(shí)現(xiàn)比較麻煩。我也看到有朋友搞過(guò),

3、用xml的bitmap標(biāo)簽實(shí)現(xiàn)波浪線效果

首頁(yè)要搞一個(gè)周期的波浪線,即包括波峰和波谷,如下圖所示:

wave_item:

然后水平方向上平鋪,從而實(shí)現(xiàn)波浪線效果,代碼如下:

wave.xml:

<?xml version="1.0" encoding="utf-8"?> 
<bitmap xmlns:android="http://schemas.android.com/apk/res/android" 
 android:antialias="true" 
 android:src="@drawable/wave_item" 
 android:tileMode="repeat" /> 

activity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
 xmlns:tools="http://schemas.android.com/tools" 
 android:layout_width="match_parent" 
 android:layout_height="match_parent" 
 android:orientation="vertical" 
 android:paddingBottom="@dimen/activity_vertical_margin" 
 android:paddingTop="@dimen/activity_vertical_margin" > 
 
 <ImageView 
  android:layout_width="match_parent" 
  android:layout_height="wrap_content" 
  android:background="@drawable/wave" /> 
 
</LinearLayout>

 注意:這個(gè)ImageView通過(guò)background顯示圖片,src是顯示不了這樣的效果的。

希望本文所述對(duì)大家學(xué)習(xí)Android軟件編程有所幫助。

相關(guān)文章

最新評(píng)論

望都县| 惠州市| 沙湾县| 灵川县| 佛山市| 泽州县| 清远市| 霍邱县| 福清市| 麻栗坡县| 长岭县| 长宁县| 通化市| 遂川县| 石景山区| 兖州市| 莱芜市| 博乐市| 应城市| 金溪县| 米泉市| 潼关县| 故城县| 兴城市| 根河市| 乌海市| 察雅县| 临漳县| 道孚县| 老河口市| 安义县| 霍林郭勒市| 清流县| 常山县| 曲麻莱县| 武穴市| 蒲城县| 申扎县| 葫芦岛市| 昭觉县| 莫力|