Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android 中的小細節

Android 中的小細節

編輯:關於Android編程

1.EditView的自定義樣式

其實這部分大家一定不陌生,通常默認的樣式都與我們的設計樣式有出入,那麼就需要我們自定義,通常我們使用Android:background="xxx" 來自定義。常見的我就不重復啰嗦了,下面介紹一些特殊的使用。

首先看看默認樣式(SdkVersion=23,安卓6.0):

這裡寫圖片描述

文字選擇操作時:

這裡寫圖片描述

文字選中時:

這裡寫圖片描述

1.修改光標顏色

修改光標的顏色很簡單,只需要使用android:textCursorDrawable="XXX" 屬性。

首先我們自定義drawable,cursor.xml




     
    

使用:
效果圖:

這裡寫圖片描述

2.修改選中圖標

這個圖標就是默認樣式的2圖與3圖中的墨綠色水滴狀圖標。同樣也很簡單,直接上代碼。

效果:

這裡寫圖片描述

這裡寫圖片描述

PS:因為沒有合適的圖片所以左右設置的都是一樣的,理解一下哈!

是不是還覺得有點別扭,文字的選中顏色與EditView默認的下劃線還是墨綠色,其實改起來也很簡單。加上下面兩行代碼。

android:backgroundTint="#9bd435"     
android:textColorHighlight="#9bd435" 

最終自定義效果:

這裡寫圖片描述

3.使用Material Design主題屬性

首先了解一下Material Design 各個屬性。這裡有張在網上找來的圖,此圖一目了然。

這裡寫圖片描述

那麼其實就簡單了,在我們的主題中加入colorAccent即可。

效果圖:

這裡寫圖片描述

這裡寫圖片描述

我在自己的手機的應用中發現使用1、2方法去自定義的只有UC浏覽器,其中微信和淘寶直接使用的默認樣式。支付寶和QQ等大多數使用了3方法,畢竟簡單,效果也不錯。

2.Scrollbar自定義樣式

首先看看默認樣式(SdkVersion=23,安卓6.0):




    ......


效果圖:

這裡寫圖片描述

自定義滾動條首先我們要自定義drawable,scrollbar.xml自定義代碼:




    
    

使用scrollbarThumbVertical:




    ......

效果圖:

這裡寫圖片描述

當然水平方向的滾動條也是可以自定義的,同時這些也都適用於ListView、RecyclerView。

android:scrollbars="horizontal"
android:scrollbarThumbHorizontal="xxx"

最後還有一個android:scrollbarStyle="xxx",可以設置滾動條的位置。默認是insideOverlay,下面我直接上相應設置對應的效果圖。

insideInset:(位置在padding內,會插入在View後面,不會遮擋View)

這裡寫圖片描述

outsideOverlay:(位置在padding外,覆蓋在View上,如果滾動條比padding大會遮擋View)

這裡寫圖片描述

outsideInset:(位置在padding外,會插入在View後面,不會遮擋View)

這裡寫圖片描述

最後兩張圖可能乍一看是一樣的,其實仔細看button距滾動條的位置其實是不一樣的。

3.去除滑動盡頭陰影效果

陰影如圖:

這裡寫圖片描述

去除非常簡單,加上android:overScrollMode="never" 屬性即可。

4.clipChildren屬性的使用

android:clipChildren的意思是是否允許子View超出父View。好像有點懵,那我們直接上例子。

這裡寫圖片描述

圖中是現在大多外賣app都會有的一個購物車效果。其中紅框中的部分高度略高於旁邊的View。那麼這時就可以使用clipChildren來實現。首先在布局根節點設置android:clipChildren="false",在使用android:layout_gravity="xxx"控制超出部分。

代碼:


 

    

        

            

            

        

        

        

    

效果圖:

這裡寫圖片描述

是不是挺簡單,如果是你?你會怎樣實現呢?

5.點九圖(.9.png)的使用

接著上面的購物車效果,在圖中是不是有一個代表購買商品數量的數字。如果此時一個土豪一次買了上百份的外賣,上面的效果會如何?我就試了試,得到了下面的效果:

這裡寫圖片描述

可以清楚地看到原本的圓形被橫向拉伸了。。。那就說明這個圓形圖標不是點九圖。那麼我們來制作張。

大家使用Studio可以很方便的去制作,首先右鍵圖片,會彈出以下菜單:
這裡寫圖片描述

點擊Create 9-Patch file... 創建點九圖片。

這裡寫圖片描述

上圖就是最終完成的圖片,在上面我有標注各個位置的含義。

替換圖片後現在再來看看效果:

這裡寫圖片描述

是不是看起來好多了。

其實上面介紹的這些內容都是很細節的東西,一般不太會注意到的,一般項目也不太常用。分享出來以備不時之需。最後大家多多點贊哈!

(function(){('pre.prettyprint code').each(function () { var lines = (this).text().split(′\n′).length;varnumbering = $('').addClass('pre-numbering').hide(); (this).addClass(′has?numbering′).parent().append(numbering); for (i = 1; i
  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved