安卓——使用SeekBar制作可拖动的进度条 傷城~ 2022-05-29 05:18 160阅读 0赞 ![Image 1][] ![Image 1][] ![Image 1][] ![Image 1][] ![Image 1][] 运行截图: 拖动时变颜色 ![Image 1][] ![Image 1][] activity\_main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context="com.example.lenovo.seekbar.MainActivity"> <SeekBar android:thumb="@drawable/my_thumb" android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/seekBar" android:max="100" android:progress="50" /> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/tv1" /> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/tv2" /> </LinearLayout> my\_thumb.xml select和normal是两张图片,可以换成别的图片哦 <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/select" android:state_pressed="true" android:state_window_focused="true"/> <item android:drawable="@drawable/select" android:state_focused="true" android:state_window_focused="true"/> <item android:drawable="@drawable/select" android:state_selected="true" android:state_window_focused="true"/> <item android:drawable="@drawable/normal"/> </selector> MainActivity.java package com.example.lenovo.seekbar; import android.app.Activity; import android.os.Bundle; import android.widget.SeekBar; import android.widget.TextView; public class MainActivity extends Activity implements SeekBar.OnSeekBarChangeListener{ private SeekBar seekBar; private TextView tv1; private TextView tv2; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); tv1=(TextView)findViewById(R.id.tv1); tv2=(TextView)findViewById(R.id.tv2); seekBar=(SeekBar)findViewById(R.id.seekBar); seekBar.setOnSeekBarChangeListener(this); } //数值改变 @Override public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { tv1.setText("正在拖动"); tv2.setText("当前数值:"+progress); } //开始拖动 @Override public void onStartTrackingTouch(SeekBar seekBar) { tv1.setText("开始拖动"); } //停止拖动 @Override public void onStopTrackingTouch(SeekBar seekBar) { tv1.setText("终止拖动"); } } [Image 1]:
还没有评论,来说两句吧...