Android Studio 拖移條 SeekBar 教學
SeekBar 是 ProgressBar 的延伸
SeekBar 可以運用觸控事件
/可拖動的拇指/左右方向鍵並改變它的數值。
程式設計者可以增加它的值讓它往右或是減少它的值讓它往左。
程式碼
首先至activity_main.xml創建SeekBar
activity_main.xml
執行畫面
事件
SeekBar 事件為OnSeekBarChangeListener
裡面有三個事件
onProgressChanged:進度發生改變時會觸發
onStartTrackingTouch:按住SeekBar時會觸發
onStopTrackingTouch:放开SeekBar時會觸發
在這我們會一起做展示
首先在activity_main.xml創建SeekBar以及TextView
TextView用來顯示最大值和目前拖移值
activity_main.xml
在至MainActivity.java設定事件
MainActivity.java
執行畫面
拖移前
按下SeekBar
放開SeekBar
SeekBar 可以運用觸控事件
/可拖動的拇指/左右方向鍵並改變它的數值。
程式設計者可以增加它的值讓它往右或是減少它的值讓它往左。
程式碼
首先至activity_main.xml創建SeekBar
activity_main.xml
<SeekBar
android:id="@+id/seekBar"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
執行畫面
事件
SeekBar 事件為OnSeekBarChangeListener
裡面有三個事件
onProgressChanged:進度發生改變時會觸發
onStartTrackingTouch:按住SeekBar時會觸發
onStopTrackingTouch:放开SeekBar時會觸發
在這我們會一起做展示
首先在activity_main.xml創建SeekBar以及TextView
TextView用來顯示最大值和目前拖移值
activity_main.xml
<SeekBar
android:id="@+id/seekbar"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/seektext"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
在至MainActivity.java設定事件
MainActivity.java
public class MainActivity extends AppCompatActivity { private SeekBar seekbar;private TextView seektext;@Overrideprotected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);seekbar = (SeekBar) findViewById(R.id.seekbar);seektext = (TextView) findViewById(R.id.seektext);seekbar.setMax(150);//設定SeekBar最大值seekbar.setProgress(80);//設定SeekBar拖移初始值seektext.setText("目前拖移植:" +seekbar.getProgress() + " / 最大值:"+seekbar.getMax()); seekbar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() { @Overridepublic void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { seektext.setText("目前拖移植:" + progress + " / 最大值:"+seekbar.getMax());} @Overridepublic void onStartTrackingTouch(SeekBar seekBar) { Toast.makeText(MainActivity.this, "觸碰SeekBar", Toast.LENGTH_SHORT).show();} @Overridepublic void onStopTrackingTouch(SeekBar seekBar) { Toast.makeText(MainActivity.this, "放開SeekBar", Toast.LENGTH_SHORT).show();} });} }
執行畫面
拖移前
按下SeekBar
放開SeekBar
以上就是簡單的SeekBar教學。
留言
張貼留言