标签:
SeekBar组件是可以手动调整进度的拖动条,最常见的使用地方是听音乐或者看视频时,往前或者往后拖动进行定位,手机中的音量控制等。
该实例中,手动改变进度,在TextView组件中会显示相应进度百分比。
首先是布局文件:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/LinearLayout1" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context="com.example.test_seekbar.MainActivity" > <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/tv1" android:textAppearance="?android:attr/textAppearanceLarge" /> <SeekBar android:id="@+id/seekBar1" android:layout_width="match_parent" android:layout_height="wrap_content" android:max="100" android:background="#fff0f000" /> <!-- android:max="100"设定进度条最大显示值 --> </LinearLayout>
其次是strings.xml文件:
<?xml version="1.0" encoding="utf-8"?> <resources> <string name="app_name">Test_SeekBar</string> <string name="action_settings">Settings</string> <string name="tv1">None</string> </resources>
再次是andorid源码文件:
package com.example.test_seekbar; import android.os.Bundle; import android.support.v7.app.ActionBarActivity; import android.widget.SeekBar; import android.widget.SeekBar.OnSeekBarChangeListener; import android.widget.TextView; public class MainActivity extends ActionBarActivity implements OnSeekBarChangeListener{//通过接口实现拖动条的监听事件 private TextView textView=null; private SeekBar seekBar=null; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); textView = (TextView) findViewById(R.id.textView1); seekBar = (SeekBar) findViewById(R.id.seekBar1); seekBar.setOnSeekBarChangeListener(MainActivity.this); } @Override public void onProgressChanged(SeekBar arg0, int arg1, boolean arg2) {//当进度值改变时执行该方法 // TODO Auto-generated method stub textView.setText("当前进度:"+String.valueOf(arg1)+"%"); } @Override public void onStartTrackingTouch(SeekBar arg0) {//当触摸到拖动条时执行该方法 // TODO Auto-generated method stub } @Override public void onStopTrackingTouch(SeekBar arg0) {//当离开触摸拖动条时执行该方法 // TODO Auto-generated method stub } }
最后是测试结果:
标签:
原文地址:http://my.oschina.net/u/2243176/blog/358872