Android UI设计 SeekBar拖动条用法
来源:互联网 发布:生产工艺制作软件 编辑:程序博客网 时间:2024/05/21 21:35
SeekBar类似于ProgressBar,不过ProgressBar主要功能是让用户知道目前的状态,而SeekBar的功能在于让用户调整进度。举个例子,在音乐播放器中,你可以通过SeekBar来调整音乐播放的进度。
下面是效果图:
拖动时,TextView会动态显示当前的进度
布局xml代码:
12345678910111213141516171819
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:id="@+id/tv" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="" /> <SeekBar android:id="@+id/seek" android:layout_width="fill_parent" android:layout_height="wrap_content" android:max="100" android:progress="10" /></LinearLayout>
程序代码:
123456789101112131415161718192021222324252627282930313233343536373839404142434445
package com.pocketdigi; import android.app.Activity;import android.os.Bundle;import android.widget.SeekBar;import android.widget.TextView;import android.widget.SeekBar.OnSeekBarChangeListener; public class main extends Activity { /** Called when the activity is first created. */SeekBar sb;TextView tv; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); tv=(TextView)findViewById(R.id.tv); sb=(SeekBar)findViewById(R.id.seek); sb.setProgress(90); sb.setOnSeekBarChangeListener(sbLis); } private OnSeekBarChangeListener sbLis=new OnSeekBarChangeListener(){ @Overridepublic void onProgressChanged(SeekBar seekBar, int progress,boolean fromUser) {//进度改变时触发tv.setText(String.valueOf(sb.getProgress())); } @Overridepublic void onStartTrackingTouch(SeekBar seekBar) {// 开始拖动时触发,与onProgressChanged区别在于onStartTrackingTouch在停止拖动前只触发一次//而onProgressChanged只要在拖动,就会重复触发} @Overridepublic void onStopTrackingTouch(SeekBar seekBar) {//结束拖动时触发 } };}
© 2010, 冰冻鱼. 请尊重作者劳动成果,复制转载保留本站链接! 应用开发笔记