展会信息港展会大全

Android学习之SeekBar控件
来源:互联网   发布日期:2015-10-03 11:14:02   浏览:2583次  

导读:经过上面简单的步骤一个简单的SeekBar应用就完成了,其实其他很多控件使用方法都一样,首先定义控件,然后取得控件对象,添加监听器,最后在监听器的相应方法里实现功能!!最后祝大家学习愉快!!!...

SeekBar:A SeekBar is an extension of ProgressBar that adds a draggable thumb. The user can touch the thumb and drag left or right to set the current progress level or use the arrow keys. Placing focusable widgets to the left or right of a SeekBar is discouraged.

上面是官方的定义。

什么是SeekBar控件,SeekBar控件其实就是一个高级点的进度条,就像我们在听歌,看电影用的播放器上的进度条一样,是可以拖动的,可以改变进度的一个进度条控件!就是下面这个样子:

下面来看如何使用SeekBar,用一个例子来说,功能非常简单,Activity上就是一个SeekBar和一个TextView,当我们拖动SeekBar的进度时,在下面的TextView中显示相应的进度变化!

第一步:定义Activity

在main.xml文件中加上一个SeekBar和一个TextView

<?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"

>

<SeekBar

android:id="@+id/seekbar"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

>

</SeekBar>

<EditText

android:id="@+id/edit"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

>

</EditText>

</LinearLayout>

第二步:编写Activity

package com.gufengxiachen.counter;

import android.app.Activity;

import android.os.Bundle;

import android.widget.SeekBar;

import android.widget.SeekBar.OnSeekBarChangeListener;

import android.widget.TextView;

public class CounterActivity extends Activity {

/** Called when the activity is first created. */

//定义一个SeekBar和一个TextView

private SeekBar seekBar;

private TextViewtextView;

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

//根据ID值取得SeekBar对象

seekBar = (SeekBar)findViewById(R.id.seekbar);

seekBar.setMax(100);

//为SeekBar设置监听器(这里使用匿名内部类)

seekBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener(){

//复写OnSeeBarChangeListener的三个方法

//第一个时OnStartTrackingTouch,在进度开始改变时执行

@Override

public void onStartTrackingTouch(SeekBar seekBar) {

// TODO Auto-generated method stub

}

//第二个方法onProgressChanged是当进度发生改变时执行

@Override

public void onProgressChanged(SeekBar seekBar, int progress,

boolean fromUser) {

// TODO Auto-generated method stub

textView = (TextView)findViewById(R.id.edit);

int i= seekBar.getProgress();

textView.setText(""+i);

}

//第三个是onStopTrackingTouch,在停止拖动时执行

@Override

public void onStopTrackingTouch(SeekBar seekBar) {

// TODO Auto-generated method stub

textView = (TextView)findViewById(R.id.edit);

int i= seekBar.getProgress();

textView.setText(""+i);

}

});

}

}

经过上面简单的步骤一个简单的SeekBar应用就完成了,其实其他很多控件使用方法都一样,首先定义控件,然后取得控件对象,添加监听器,最后在监听器的相应方法里实现功能!!

最后祝大家学习愉快!!!

赞助本站

人工智能实验室

相关热词: SeekBar

AiLab云推荐
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港