• <noscript id="ggggg"><dd id="ggggg"></dd></noscript>
    <small id="ggggg"></small> <sup id="ggggg"></sup>
    <noscript id="ggggg"><dd id="ggggg"></dd></noscript>
    <tfoot id="ggggg"></tfoot>
  • <nav id="ggggg"><cite id="ggggg"></cite></nav>
    <nav id="ggggg"></nav>
    成人黃色A片免费看三更小说,精品人妻av区波多野结衣,亚洲第一极品精品无码,欧美综合区自拍亚洲综合,久久99青青精品免费观看,中文字幕在线中字日韩 ,亚洲国产精品18久久久久久,黄色在线免费观看

    Android5.0以后,materialDesign風格的加陰影和裁剪效果

    2018-10-17    seo達人

    如果您想訂閱本博客內(nèi)容,每天自動發(fā)到您的郵箱中, 請點這里

    5.0以后,materialDesign風格,出現(xiàn)了立體這種概念,高光,陰影,也就是Z軸,凸顯層次;同時,裁剪view也變得方便簡單了很多。
    1,先說說陰影的實現(xiàn)。
    方案1:在xml中設置 
    xml中設置有兩個方式,android:elevation="2dp" 
    android:translationZ="2dp"這兩句代碼是可以同時并存的,而且是疊加的效果;當然只使用其中一個屬性進行z軸的陰影設置也是OK的。

    方案2:在代碼中設置 
    (下面說這個實現(xiàn)方式,其實就是輪廓的實現(xiàn))

    設置陰影,有一個需要注意的地方:
    ①:view的大小要比它的父布局小,才會有陰影效果,如果相同大小,是看不到陰影效果的; 
    ②:給圖片設置陰影的時候,如果這種圖片的background屬性是shape,那直接通過xml設置陰影是OK的,但是,如果是一張png或者其他格式的圖片,直接通過xml設置android:elevation="2dp" 
    android:translationZ="2dp"陰影是看不到效果的,得通過其他代碼設置才行。。。**

    2,view的輪廓,輪廓其實也是陰影
    默認情況下,所有的view都是矩形的,雖然可以給view設置背景圓形的圖片,即可以在界面顯示出圓形的內(nèi)容,但是view的大小實際上依然是矩形,并且設置的圖片實際上也是矩形的,只是圓形以外的區(qū)域是透明色。 
    如果根據(jù)view大小來生成對應的陰影,就會出現(xiàn)很奇怪的效果,(一個看起來圓形的view展示出的確實一個矩形的陰影)我了解決這個問題,view增加了一個新的描述來指明內(nèi)容顯示的形狀,這就是 輪廓

    輪廓的實現(xiàn)
    ①通過shape設置的背景,view會自動根據(jù)shape的形狀進行輪廓判定,
    ②通過color設置的背景,view默認其輪廓和view的大小一樣。
    ③但是通過圖片進行背景設置,view則無法獲知輪廓的形狀,這個時候就需要手動進行指定了。
    1
    2
    3
    一:在xml中可以通過android:outlineProvider來指定輪廓的判定方式: 
    1,none即使設置了Z屬性,也不會顯示陰影 
    2,background會按照背景來設置陰影形狀 
    3,bounds會按照view的大小來描繪陰影

    **對于①和②這種情況,也是可以通過設置`android:outlineProvider`
    來改變陰影的形狀以及輪廓外觀的。**

    對于③這種背景是一張png或者其他格式的圖片的情況,
    `android:outlineProvider=“background”`
    是沒有效果的,屬性設置成`android:outlineProvider=bounds`
    雖然也是有效果的,但是陰影輪廓是一個方形的輪廓,
    并不是我們想要的效果了。

    不設置`android:outlineProvider`屬性就更沒有效果了。
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    對于這種使用了png圖片作為背景的view加陰影輪廓的時候情況解決辦法也非常簡單,解決辦法就是:
    就通過Java代碼設置,也就是說,一個圓形的png圖(我們知道,看起來是圓形的,
    但是它其實還是方形的圖片,只是圓形之外的區(qū)域是透明不可見的),
     通過Java代碼設置輪廓,就會顯示出圓形的陰影輪廓了。
    1
    2
    3
    具體實現(xiàn),繼續(xù)看: 
    二:在代碼中,課通過setOutlineProvider來指定一個view的輪廓。 
    對于③這種情況在代碼中設置輪廓才會有效果。

    TextView textView= findViewById(R.id.tv);
    ViewOutlineProvider viewOutlineProvider=new ViewOutlineProvider() {
                @Override
                public void getOutline(View view, Outline outline) {
             //x,y軸表示位置,后兩個參數(shù)表示長,寬 
                   outline.setOval(0,0,textView.getWidth(),textView.getHeight());
                }
            };
    textView.setOutlineProvider(viewOutlineProvider);
    1
    2
    3
    4
    5
    6
    7
    8
    9
    強調:
    如果采用圓形圖片作為背景,即使在xml布局中指定android:outlineProvider=“background”,也不會顯示陰影,設置為android:outlineProvider=bounds,雖然也有效果,但是效果很差,所以一般都是通過代碼來指定輪廓顯示。

    1,一個shape圓形作為背景,設置陰影,設置android:outlineProvider的4種屬性的效果:


    2,一個圓形png作為背景,設置陰影,設置android:outlineProvider的4種屬性的效果:


    3,一個png作為背景,設置陰影,通過代碼設置的效果:


    3,view的裁剪
    裁剪,默認的ImageView是矩形的,很多時候,需要的是圓角的ImageView或者圓形的ImageView,這就需要裁剪view了。

    實現(xiàn),裁剪圓形:

    final TextView textView= findViewById(R.id.tv);

    ViewOutlineProvider viewOutlineProvider=new ViewOutlineProvider() {
                @Override
                public void getOutline(View view, Outline outline) {
                    //設置圓形oval
                    outline.setOval(0,0,textView.getWidth(),textView.getHeight());
                }
            };
    //設置裁剪
    textView.setClipToOutline(true);
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    實現(xiàn),裁剪圓角矩形:

    final TextView textView= findViewById(R.id.tv);

    ViewOutlineProvider viewOutlineProvider=new ViewOutlineProvider() {
                @Override
                public void getOutline(View view, Outline outline) {
                    //設置圓角矩形
                   outline.setRoundRect(0,0,view.getWidth(),view.getHeight(),25);
                }
            };
    textView.setOutlineProvider(viewOutlineProvider);
    //設置裁剪
    藍藍設計www.lzhte.cn )是一家專注而深入的界面設計公司,為期望卓越的國內(nèi)外企業(yè)提供卓越的UI界面設計、BS界面設計 、 cs界面設計 、 ipad界面設計 、 包裝設計 、 圖標定制 、 用戶體驗 、交互設計、 網(wǎng)站建設 平面設計服務

    日歷

    鏈接

    個人資料

    藍藍設計的小編 http://www.lzhte.cn

    存檔

    主站蜘蛛池模板: 亚洲国产精品综合久久20| 日日a.v拍夜夜添久久免费| 91干逼视频| 国产99久久精品一区二区| 亚洲中文精品一区二区| 国产在线无码一区二区三区| 视频二区国产精品职场同事| 亚洲AV成人一区二区三区在线播放 | 影音先锋大黄瓜视频| 亚洲欧洲色图片网站| 2022精品久久久久久中文字幕| 国产精品亚洲综合天堂夜夜| 亚洲精品456在在线播放| 午夜国产成人自拍视频| 亚洲丁香五月天| 朝鲜女人大白屁股ASS孕交| 91极品尤物国产在线播放| 国产激情一区二区视频桃花视频| 色翁荡熄又大又硬又粗又视频| 视频一本大道香蕉久在线播放| 制服 丝袜 亚洲 中文 综合| 日韩欧美亚洲国产精品字幕久久久 | 国产女人喷潮视频在线观看| 亚洲区一区二区中文字幕| 亚洲国产精品午夜一区| 野花社区www视频日本| 久久五月精品中文字幕| 国产精品国产免费无码专区不卡| 污网站免费| 亚洲国产av剧一区二区三区| 欧美日韩一区二区三区在线视频| 成人av免费在线播放| 亚洲欧美电影在线一区二区| 婷婷福利导航| 亚洲A∨日韩Av最新在线| 午夜免费福利小电影| 国产成人精品综合久久久久| 香蕉久久久久成人麻豆AV影院| 日日噜噜噜夜夜爽爽狠狠图片| 免费人欧美成又黄又爽的视频| 久久综合一本中文字幕|