Android 資源簡介(四) ClipDrawable

ClipDrawable 代表從其他位圖上截取的一部分圖片內(nèi)容。

在 XML 中定義 ClipDrawable 對象使用 <clip> 元素,該元素可以包含如下的屬性:

  1. android:drawable:指定作為 ClipDrawable 元素的截取源的 Drawable 對象胀屿;
  2. android:clipOrientation:指定截取的方向,可以設(shè)置水平或者垂直截惹渍 ;
  3. android:gravity:指定截取時的對齊方式奖蔓。

使用 ClipDrawable 對象時可以調(diào)用 setLevel(int level) 方法來設(shè)置截取的區(qū)域的大小,level 取值為 0~10000吆鹤,為 0 時,截取的圖片為空沾凄,為 10000 時知允,截取整張圖片。

下面是一個簡單的使用示例保屯。

自定義的 ClipDrawable 對象:

<?xml version="1.0" encoding="utf-8"?>
<clip xmlns:android="http://schemas.android.com/apk/res/android"
    android:drawable="@drawable/girl04"
    android:clipOrientation="vertical"
    android:gravity="center" />

主布局文件的代碼如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/colorGray"
    android:orientation="vertical"
    android:gravity="center_horizontal"
    >

    <ImageView
        android:id="@+id/imageClip"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:src="@drawable/test_clip"
        />

</LinearLayout>

主程序文件的代碼如下:

package com.toby.personal.testlistview;

import android.graphics.drawable.ClipDrawable;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.support.v7.app.AppCompatActivity;
import android.widget.ImageView;

import java.util.Timer;
import java.util.TimerTask;

public class MainActivity extends AppCompatActivity {

    final private static String TAG = "Toby_Test";
    final private static int MsgWhat = 20170406;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        final ImageView imageView = (ImageView) findViewById(R.id.imageClip);
        final ClipDrawable clipDrawable = (ClipDrawable) imageView.getDrawable();
        final Handler handler = new Handler() {
            @Override
            public void handleMessage(Message msg) {
                if (msg.what == MsgWhat) {
                    clipDrawable.setLevel(clipDrawable.getLevel() + 200);
                }
                super.handleMessage(msg);
            }
        };

        final Timer timer = new Timer();
        timer.schedule(new TimerTask() {
            @Override
            public void run() {
                Message msg = new Message();
                msg.what = MsgWhat;
                handler.sendMessage(msg);
                if (clipDrawable.getLevel() >= 10000) {
                    timer.cancel();
                }
            }
        }, 0, 300);
    }
}

上面示例的運行效果如下:

顯示效果

參考文獻(xiàn):《瘋狂Android講義(第2版)》

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末雹姊,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子敦姻,更是在濱河造成了極大的恐慌歧杏,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,427評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件旺入,死亡現(xiàn)場離奇詭異凯力,居然都是意外死亡,警方通過查閱死者的電腦和手機拗秘,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,551評論 3 395
  • 文/潘曉璐 我一進(jìn)店門祈惶,熙熙樓的掌柜王于貴愁眉苦臉地迎上來扮匠,“玉大人棒搜,你說我怎么就攤上這事活箕。” “怎么了末盔?”我有些...
    開封第一講書人閱讀 165,747評論 0 356
  • 文/不壞的土叔 我叫張陵座慰,是天一觀的道長。 經(jīng)常有香客問我游盲,道長,這世上最難降的妖魔是什么益缎? 我笑而不...
    開封第一講書人閱讀 58,939評論 1 295
  • 正文 為了忘掉前任莺奔,我火速辦了婚禮变泄,結(jié)果婚禮上令哟,老公的妹妹穿的比我還像新娘妨蛹。我一直安慰自己,他們只是感情好狠半,可當(dāng)我...
    茶點故事閱讀 67,955評論 6 392
  • 文/花漫 我一把揭開白布神年。 她就那樣靜靜地躺著,像睡著了一般瘤袖。 火紅的嫁衣襯著肌膚如雪昂验。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,737評論 1 305
  • 那天占婉,我揣著相機與錄音,去河邊找鬼逆济。 笑死磺箕,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的松靡。 我是一名探鬼主播雕欺,決...
    沈念sama閱讀 40,448評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼屠列,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了夏志?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,352評論 0 276
  • 序言:老撾萬榮一對情侶失蹤苛让,失蹤者是張志新(化名)和其女友劉穎沟蔑,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蝌诡,經(jīng)...
    沈念sama閱讀 45,834評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡溉贿,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,992評論 3 338
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了浦旱。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片宇色。...
    茶點故事閱讀 40,133評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖颁湖,靈堂內(nèi)的尸體忽然破棺而出宣蠕,到底是詐尸還是另有隱情,我是刑警寧澤甥捺,帶...
    沈念sama閱讀 35,815評論 5 346
  • 正文 年R本政府宣布抢蚀,位于F島的核電站,受9級特大地震影響镰禾,放射性物質(zhì)發(fā)生泄漏唱逢。R本人自食惡果不足惜坞古,卻給世界環(huán)境...
    茶點故事閱讀 41,477評論 3 331
  • 文/蒙蒙 一痪枫、第九天 我趴在偏房一處隱蔽的房頂上張望奶陈。 院中可真熱鬧吃粒,春花似錦声搁、人聲如沸疏旨。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,022評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽窃植。三九已至巷怜,卻和暖如春延塑,著一層夾襖步出監(jiān)牢的瞬間关带,已是汗流浹背宋雏。 一陣腳步聲響...
    開封第一講書人閱讀 33,147評論 1 272
  • 我被黑心中介騙來泰國打工燃箭, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留舍败,地道東北人邻薯。 一個月前我還...
    沈念sama閱讀 48,398評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像灵嫌,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子玖院,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,077評論 2 355

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,185評論 25 707
  • 概述 今天我們來探究一下android的樣式蔑滓。其實烫饼,幾乎所有的控件都可以使用 background屬性去引用自定義...
    CokeNello閱讀 4,845評論 1 19
  • ¥開啟¥ 【iAPP實現(xiàn)進(jìn)入界面執(zhí)行逐一顯】 〖2017-08-25 15:22:14〗 《//首先開一個線程荠耽,因...
    小菜c閱讀 6,426評論 0 17
  • 文倘屹,冷月秋風(fēng) 那年那月那午后 姐姐踩著小凳子站在大鐵鍋旁 把蒸籠一盤一盤的筘上 哥哥那天井的轱轆在搖 嗡呀纽匙,盆呀烛缔,...
    冷月秋風(fēng)qin閱讀 239評論 0 1
  • Dodo晕翠、2017/6/25(Sun) Poseidon is one of the ‘‘Big Three G...
    豆媽_d089閱讀 208評論 0 0