现在的位置: 首页 > 综合 > 正文

android 自定义SeekBar

2013年12月02日 ⁄ 综合 ⁄ 共 3101字 ⁄ 字号 评论关闭

效果:

 

代码如下:

Java代码  收藏代码
  1. <SeekBar android:id="@+id/seekbar"  
  2.             android:layout_width="wrap_content"  
  3.             android:layout_height="wrap_content"  
  4.             android:paddingLeft="5dip"  
  5.             android:paddingRight="5dip"  
  6.             android:layout_marginLeft="10dip"  
  7.             android:layout_marginRight="10dip"  
  8.             android:progressDrawable="@layout/seekbar_style"  
  9.             style="?android:attr/progressBarStyleHorizontal"   
  10.             android:thumb="@layout/thumb"  
  11.             android:layout_weight="1"  
  12.             />  

 其实最最关键的就是:

Java代码  收藏代码
  1. android:progressDrawable="@layout/seekbar_style"  
  2. android:thumb="@layout/thumb"  

 怎么去定义呢? 
看下面的代码: 
seekbar_style.xml

Java代码  收藏代码
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <layer-list xmlns:android="http://schemas.android.com/apk/res/android">  
  3.   
  4.     <item android:id="@android:id/background">  
  5.         <shape>  
  6.             <corners android:radius="10dip" />  
  7.             <gradient android:startColor="#ffffffff"  
  8.                 android:centerColor="#ff000000" android:endColor="#ff808A87"  
  9.                 android:centerY="0.45" android:angle="270" />  
  10.         </shape>  
  11.     </item>  
  12.   
  13.     <item android:id="@android:id/progress">  
  14.         <clip>  
  15.             <shape>  
  16.                 <corners android:radius="10dip" />  
  17.                 <gradient android:startColor="#ffffffff"  
  18.                     android:centerColor="#ffFFFF00" android:endColor="#ffAABD00"  
  19.                     android:centerY="0.45" android:angle="270" />  
  20.             </shape>  
  21.         </clip>  
  22.     </item>  
  23. </layer-list>    

 

thumb.xml的代码,这里就是哪个条上的进度按钮,你可以设置不图片。方形,圆形都可以

 

Java代码  收藏代码
  1. <?xml version="1.0" encoding="UTF-8"?>    
  2. <selector xmlns:android="http://schemas.android.com/apk/res/android">          
  3.     <!-- 按下状态 -->   
  4.     <item      
  5.         android:state_pressed="true"   
  6.         android:drawable="@drawable/thumb_normal"     
  7.         />     
  8.                
  9.     <!-- 普通无焦点状态 -->   
  10.     <item      
  11.         android:state_focused="false"      
  12.         android:state_pressed="false"    
  13.         android:drawable="@drawable/thumb_normal"  
  14.     />  
  15.   
  16.   
  17. </selector>    

 Java代码的处理:并实现播放中的拖动功能

Java代码  收藏代码
  1. seekBar = (SeekBar) controlView.findViewById(R.id.seekbar);  
  2.         seekBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {  
  3.   
  4.             @Override  
  5.             public void onProgressChanged(SeekBar seekbar, int progress,  
  6.                     boolean fromUser) {  
  7.   
  8.                 if (fromUser) {  
  9.   
  10.                     //if(!isOnline){  
  11.                         vv.seekTo(progress);  
  12.                     //}  
  13.                       
  14.                 }  
  15.   
  16.             }  
  17.   
  18.             @Override  
  19.             public void onStartTrackingTouch(SeekBar arg0) {  
  20.                 myHandler.removeMessages(HIDE_CONTROLER);  
  21.             }  
  22.   
  23.             @Override  
  24.             public void onStopTrackingTouch(SeekBar seekBar) {  
  25.                 myHandler.sendEmptyMessageDelayed(HIDE_CONTROLER, TIME);  
  26.             }  
  27.         });  

 本文转自:http://yangguangfu.iteye.com/blog/732160

作者:SprLee9                                                    
出处:http://blog.csdn.net/SprLee9                
本博客文章来自网络中收集,转载请注明出处   

抱歉!评论已关闭.