收藏 分销(赏)

Android的SeekBar.doc

上传人:pc****0 文档编号:7234293 上传时间:2024-12-28 格式:DOC 页数:9 大小:124.50KB 下载积分:10 金币
下载 相关 举报
Android的SeekBar.doc_第1页
第1页 / 共9页
Android的SeekBar.doc_第2页
第2页 / 共9页


点击查看更多>>
资源描述
Android的SeekBar 博客分类: · Android   使用SeekBar的时候,经常遇到的问题有如下: 1. seekbar的拖动按钮没有居中。 2. seekbar的高度有问题。 3. seekbar的拖动按钮在最左最右显示不全。   首先,要解决上述问题,要先检查layout文件在描述seekbar时,有没有正确设置图片的尺寸和检查屏幕密度与图片是否放置在相应的drawable文件夹中(drawable-hdpi, drawable-mdpi, drawable-ldpi).   在确保图片资源正确的情况下,参考如下XML:   layout Xml代码   1. <SeekBar   2.     android:layout_width="321px"   3.     android:layout_height="wrap_content"   4.     android:layout_centerInParent="true"   5.     android:maxHeight="12px"   6.     android:minHeight="12px"   7.     android:paddingLeft="18px"   8.     android:paddingRight="18px"   9.     android:max="100"   10.     android:progressDrawable="@drawable/seekbar_style"   11.     android:thumb="@drawable/drag_ball"   12.     android:id="@+id/seekBar"/>   <SeekBar android:layout_width="321px" android:layout_height="wrap_content" android:layout_centerInParent="true" android:maxHeight="12px" android:minHeight="12px" android:paddingLeft="18px" android:paddingRight="18px" android:max="100" android:progressDrawable="@drawable/seekbar_style" android:thumb="@drawable/drag_ball" android:id="@+id/seekBar"/>    seekbar_style Xml代码   1. <layer-list   2.     xmlns:android="   3.     <item   4.         android:id="@android:id/background"   5.         android:drawable="@drawable/drag_bar_background"/>   6.     <item   7.         android:id="@android:id/progress"   8.         android:drawable="@drawable/drag_bar_foreground"/>   9.     <item   10.         android:id="@android:id/secondaryProgress"   11.         android:drawable="@drawable/drag_bar_foreground"/>   12. </layer-list>    <layer-list xmlns:android=" <item android:id="@android:id/background" android:drawable="@drawable/drag_bar_background"/> <item android:id="@android:id/progress" android:drawable="@drawable/drag_bar_foreground"/> <item android:id="@android:id/secondaryProgress" android:drawable="@drawable/drag_bar_foreground"/> </layer-list>    简单解释下seekbar中几个重要的属性: android:layout_height="wrap_content" //建议使用wrap_content,否则一定要保证设置的值不小于seekbar图片资源中的最高值 android:maxHeight="12px" android:minHeight="12px" //说明进度条的最低和最大高度,解决高度问题。 android:paddingLeft="18px" android:paddingRight="18px" //解决拖动按钮在最左最右显示不全的问题,padding的值一般是thumb的一半宽度。 android:progressDrawable="@drawable/seekbar_style" //设置了此值,就表示使用自定义的进度条样式,在其中可以设置进度条背景图,进度条图,缓冲条图。 android:thumb="@drawable/drag_ball" //seekbar的拖动按钮图片     android系统自带的自定义样式例子:   seekbar_style Xml代码   1. <layer-list xmlns:android="      2.      <item android:id="@android:id/background">      3.          <shape>      4.              <corners android:radius="5dip" />      5.              <gradient      6.                      android:startColor="#ff9d9e9d"      7.                      android:centerColor="#ff5a5d5a"      8.                      android:centerY="0.75"      9.                      android:endColor="#ff747674"      10.                      android:angle="270"/>      11.          </shape>      12.      </item>      13.      <item android:id="@android:id/secondaryProgress">      14.          <clip>      15.              <shape>      16.                  <corners android:radius="5dip" />      17.                  <gradient      18.                          android:startColor="#80ffd300"      19.                          android:centerColor="#80ffb600"      20.                          android:centerY="0.75"      21.                          android:endColor="#a0ffcb00"      22.                          android:angle="270"/>      23.              </shape>      24.          </clip>      25.      </item>      26.      <item android:id="@android:id/progress">      27.          <clip>      28.              <shape>      29.                  <corners android:radius="5dip" />      30.                  <gradient      31.                          android:startColor="#ff0099CC"      32.                          android:centerColor="#ff3399CC"      33.                          android:centerY="0.75"      34.                          android:endColor="#ff6699CC"      35.                          android:angle="270"/>      36.              </shape>      37.          </clip>      38.      </item>      39. </layer-list>     <layer-list xmlns:android=" <item android:id="@android:id/background"> <shape> <corners android:radius="5dip" /> <gradient android:startColor="#ff9d9e9d" android:centerColor="#ff5a5d5a" android:centerY="0.75" android:endColor="#ff747674" android:angle="270"/> </shape> </item> <item android:id="@android:id/secondaryProgress"> <clip> <shape> <corners android:radius="5dip" /> <gradient android:startColor="#80ffd300" android:centerColor="#80ffb600" android:centerY="0.75" android:endColor="#a0ffcb00" android:angle="270"/> </shape> </clip> </item> <item android:id="@android:id/progress"> <clip> <shape> <corners android:radius="5dip" /> <gradient android:startColor="#ff0099CC" android:centerColor="#ff3399CC" android:centerY="0.75" android:endColor="#ff6699CC" android:angle="270"/> </shape> </clip> </item> </layer-list>   thumb Xml代码   1. <selector xmlns:android="            2.            3.     <!-- 按下状态-->      4.     <item        5.         android:state_focused="true"        6.         android:state_pressed="true"        7.         android:drawable="@drawable/thumb_pressed" />            8.     <!-- 普通无焦点状态 -->      9.     <item        10.         android:state_focused="false"        11.         android:state_pressed="false"      12.         android:drawable="@drawable/thumb_normal" />                  13.     <!-- 有焦点状态-->      14.     <item        15.         android:state_focused="true"        16.         android:state_pressed="false"                  17.         android:drawable="@drawable/thumb_focused" />             18.     <!-- 有焦点 -->      19.     <item        20.         android:state_focused="true"                  21.         android:drawable="@drawable/thumb_focused" />         22. </selector>     Android SeekBar 2011-09-15 15:12:08     我来说两句       收藏    我要投稿 SeekBar可以作为音乐播放器的进度指示和调整工具,音量调整工具等,SeekBar是ProgressBar的一个子类,下面我们用一个可以改变并显示当前进度的拖动条例子来演示一下它的使用: 1、main.xml Java代码  <?xml version= "1.0"  encoding= "utf-8" ?>  <LinearLayout xmlns:android="       android:orientation="vertical"  android:layout_width= "fill_parent"       android:layout_height="fill_parent" >      <SeekBar android:id="@+id/SeekBar01"  android:layout_width= "245px"           android:layout_height="25px"  android:paddingLeft= "16px"           android:paddingRight="15px"  android:paddingTop= "5px"           android:paddingBottom="5px"  android:progress= "0"  android:max= "0"           android:secondaryProgress="0"  />      <TextView android:layout_width="fill_parent"           android:layout_height="wrap_content"  android:text= "@string/hello"           android:id="@+id/TextView01"  />  </LinearLayout>  2、java: Java代码  package  com.esri.arcgis.sample;    import  android.app.Activity;  import  android.os.Bundle;  import  android.widget.SeekBar;  import  android.widget.SeekBar.OnSeekBarChangeListener;  import  android.widget.TextView;  import  android.widget.Toast;    public   class  AndroidSeekBar  extends  Activity {      /** Called when the activity is first created. */       @Override       public   void  onCreate(Bundle savedInstanceState) {          super .onCreate(savedInstanceState);          setContentView(R.layout.main);            // 找到拖动条和文本框           final  SeekBar sb = (SeekBar) findViewById(R.id.SeekBar01);          final  TextView tv1 = (TextView) findViewById(R.id.TextView01);            // 设置拖动条的初始值和文本框的初始值           sb.setMax(100 );          sb.setProgress(30 );          tv1.setText("当前进度:"  + sb.getProgress());            // 设置拖动条改变监听器           OnSeekBarChangeListener osbcl = new  OnSeekBarChangeListener() {                @Override               public   void  onProgressChanged(SeekBar seekBar,  int  progress,                      boolean  fromUser) {                  tv1.setText("当前进度:"  + sb.getProgress());                  Toast.makeText(getApplicationContext(), "onProgressChanged" ,                          Toast.LENGTH_SHORT).show();              }                @Override               public   void  onStartTrackingTouch(SeekBar seekBar) {                  Toast.makeText(getApplicationContext(), "onStartTrackingTouch" ,                          Toast.LENGTH_SHORT).show();              }                @Override               public   void  onStopTrackingTouch(SeekBar seekBar) {                  Toast.makeText(getApplicationContext(), "onStopTrackingTouch" ,                          Toast.LENGTH_SHORT).show();              }            };            // 为拖动条绑定监听器           sb.setOnSeekBarChangeListener(osbcl);        }  }  3、运行程序:
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 百科休闲 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服