SeekBar樣式

系統自帶的SeekBar真是太難看了,項目需要,只能自定義了,先來張效果圖


第一個Seekbar 背景是顏色,thumb是圖片,上代碼:


[html] view plaincopy
  1. <SeekBar  
  2.         android:id="@+id/timeline"  
  3.         android:layout_width="fill_parent"  
  4.         android:layout_height="wrap_content"  
  5.         android:focusable="true"  
  6.         android:maxHeight="4.0dip"  
  7.         android:minHeight="4.0dip"  
  8.         android:paddingLeft="16.0dip"  
  9.         android:paddingRight="16.0dip"  
  10.         android:progressDrawable="@drawable/po_seekbar"  
  11.         android:thumb="@drawable/seekbar_thumb" />  
drawable/po_seekbar.xml:
[html] view plaincopy
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <layer-list  
  3.   xmlns:android="http://schemas.android.com/apk/res/android">  
  4.     <item android:id="@*android:id/background">  
  5.         <shape>  
  6.             <solid android:color="#ff51495e" />  
  7.         </shape>  
  8.     </item>  
  9.     <item android:id="@*android:id/secondaryProgress">  
  10.         <clip>  
  11.             <shape>  
  12.                 <solid android:color="#ff51495e" />  
  13.             </shape>  
  14.         </clip>  
  15.     </item>  
  16.     <item android:id="@*android:id/progress">  
  17.         <clip>  
  18.             <shape>  
  19.                 <solid android:color="#ff996dfe" />  
  20.             </shape>  
  21.         </clip>  
  22.     </item>  
  23. </layer-list>  
drawable/seekbar_thumb.xml:
[html] view plaincopy
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <selector  
  3.   xmlns:android="http://schemas.android.com/apk/res/android">  
  4.     <item android:state_focused="true" android:state_pressed="false" android:drawable="@drawable/seekbar_thumb_normal" />  
  5.     <item android:state_focused="true" android:state_pressed="true" android:drawable="@drawable/seekbar_thumb_pressed" />  
  6.     <item android:state_focused="false" android:state_pressed="true" android:drawable="@drawable/seekbar_thumb_pressed" />  
  7.     <item android:drawable="@drawable/seekbar_thumb_normal" />  
  8. </selector>  

seekbar_thumb_pressed.png:

seekbar_thumb_normal.png:


第2個和第3個seekbar都是圖片實現的

[html] view plaincopy
  1. <SeekBar  
  2.     android:id="@+id/sb_detail_play_progress"  
  3.     android:layout_width="fill_parent"  
  4.     android:layout_height="wrap_content"  
  5.     android:layout_centerVertical="true"  
  6.     android:layout_gravity="center"  
  7.     android:paddingLeft="15.0dip"  
  8.     android:paddingRight="15.0dip"  
  9.     android:progressDrawable="@drawable/progress_holo_light"  
  10.     android:thumb="@drawable/detail_icon_schedule_ball" />  

drawable/progress_holo_light.xml:

[html] view plaincopy
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <layer-list  
  3.   xmlns:android="http://schemas.android.com/apk/res/android">  
  4.     <item android:id="@*android:id/background" android:drawable="@drawable/volumn_bg" />  
  5.     <item android:id="@*android:id/secondaryProgress">  
  6.         <scale android:drawable="@drawable/volumn_front" android:scaleWidth="100%" />  
  7.     </item>  
  8.     <item android:id="@*android:id/progress">  
  9.         <scale android:drawable="@drawable/volumn_primary" android:scaleWidth="100%" />  
  10.     </item>  
  11. </layer-list>  
volumn_bg.9.png


volumn_front.9.png


volumn_primary.png


第3個seekbar



這有個圖片

demo下載鏈接:http://download.csdn.net/detail/w8320273/7800859



如何製作Seekbar圖片

之前在做Seekbar的時候,反覆讓美工做了很多圖都不合適要麼不好看,後來也不好意思讓美工繼續做了,於是自己動手做

以上圖片是在別人播放器里扣出來的圖,我自己用PhotoShop也仿照做出了一樣的圖

後面兩個用圖片實現的Seekbar是從優酷客戶端扣出來的,打開volumn_bg.9.png、volumn_front.9.png、volumn_primary.9.png ,放大到可以看很清楚,發現圖片四周都是黑點,這就是傳說中的 .9圖片(不瞭解的先弄明白再繼續),再看看大小3*25  90字節。


開始動手!

第一步當然要先打開PhotoShop啦

然後新建,如圖:


這裏的大小1*23 與 volumn_bg.9.png的大小3*25 明顯不符,不過這正是使用到.9圖片的目的

新建完成後,按Ctrl 加+鍵持續放大


在紅色箭頭所指方向選擇矩形選框工具,然後畫出一個像素的點


按方向鍵 ↑↓ 調整位置到居中

然後在選框中右鍵-填充-內容-使用-顏色,可以隨意找喜歡的顏色,volumn_primary.9.png放大後看到居中的點是藍色的,那我就來個紅色的


文件-存儲爲Web所用格式 保存名爲volumn_primary.png,保存後大小爲932字節,使用.9處理過後,它就會縮小10倍了

打開draw9patch.bat 使用draw9patch,直接將剛纔保存的圖片拖入程序中


在SDK路徑下tools文件夾下面可以找到draw9patch,在這裏提示下,某些SDK下的draw9patch不能使用,比如我的SDK:adt-bundle-windows-x86_64-20140321,SDK比較新,後來我就找了個比較老的,就可以用了 下載連接:http://download.csdn.net/detail/w8320273/7813455

照着volumn_primary.9.png給它畫黑點


在Draw9 patch中 Ctrl+S 保存,還是老名字volumn_primary.png,下圖可以看到已經自動命名成volumn_primary.9.png,大小也變成了3*25 89字節,就是不知道在程序中效果顯示會怎麼樣,那就把它複製到項目中替換掉原來的,看看情況如何



接下來再繼續做thumb也就是滑塊

首先看detail_icon_schedule_ball.png 大小40*40 2.48KB,圖片還帶有陰影效果

打開PhotoShop新建40*40,在矩形選框工具右鍵選擇圓形選框工具,按住Shift鍵同時按鼠標左鍵畫出規則圓形,畫的時候最好放大界面

然後填充想要的顏色,在PhotoShop最右邊可以找到不透明度,改爲50%

Shift+Ctrl+N新建圖層然後在中間再畫一個圓,填充,再保存然後就OK了

我畫好的樣子:


效果:


沒有陰影效果也還可以吧,需要效果的可以網上找PhotoShop實現陰影的效果,畢竟我也不是專業的

建議純顏色還是用第一種Seekbar,純顏色,不用這麼麻煩,需要更炫麗的效果那就得用這種了


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章