安卓学习第二十二天:ProgressBar与SeekBar与RatingBar
来源:互联网 发布:java身份证识别 编辑:程序博客网 时间:2024/04/28 18:38
#1安卓当中的进度条
各种进度条之间的关系
ProgressBar之间的关系
所有的进度条都是ProgressBar类的子类
同样一个ProgressBar分为垂直和水平等风格
#2SeekBar和RatingBar子类的使用方法
<ProgressBar/>标签来定义
Style的分类
水平风格:Horizontal
小风格:Small
大风格:Large
反向风格:Inverse 颜色深的控件,适合用在白色背景下
小反向风格Small.Inverse
大反向风格Large.Inverse
风格都使用Style属性来设置
#3进度条的主要属性
进度条最大值max
当前进度progress
次要进度的值SecondaryProgress
判断是水平还是垂直的,用以下方法
boolean flag=progressbar.isIndeterminate();
如果是转圈的那种,则返回true
如果是直线的那种,则返回false
progressbar.incrementprigressBy(10),不管当前进度多少,都增加10
java代码:
packagecom.myapp.yuanyang.myapplication;
importandroid.content.DialogInterface;
importandroid.content.DialogInterface.OnClickListener;
importandroid.support.v7.app.ActionBarActivity;
importandroid.os.Bundle;
importandroid.view.Menu;
importandroid.view.MenuItem;
importandroid.view.View;
importandroid.widget.Button;
importandroid.widget.ProgressBar;
publicclassMainActivityextendsActionBarActivity{
privateProgressBarprogressBar;
privateButtonbut;
@Override
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.progressbarlayout);
progressBar=(ProgressBar)findViewById(R.id.firstProgressBar);
but=(Button)findViewById(R.id.but);
progressBarListenerlistener=newprogressBarListener();
but.setOnClickListener(listener);
}
classprogressBarListenerimplementsView.OnClickListener{
@Override
publicvoidonClick(Viewv){
progressBar.incrementProgressBy(20);
System.out.println("检测到点击");
}
}
@Override
publicbooleanonCreateOptionsMenu(Menumenu){
//Inflatethemenu;thisaddsitemstotheactionbarifitispresent.
getMenuInflater().inflate(R.menu.menu_main,menu);
returntrue;
}
@Override
publicbooleanonOptionsItemSelected(MenuItemitem){
//Handleactionbaritemclickshere.Theactionbarwill
//automaticallyhandleclicksontheHome/Upbutton,solong
//asyouspecifyaparentactivityinAndroidManifest.xml.
intid=item.getItemId();
//noinspectionSimplifiableIfStatement
if(id==R.id.action_settings){
returntrue;
}
returnsuper.onOptionsItemSelected(item);
}
}
xml代码:
<?xmlversion="1.0"encoding="utf-8"?>
<RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"android:layout_width="match_parent"
android:layout_height="match_parent">
<ProgressBar
android:id="@+id/firstProgressBar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
style="?android:attr/progressBarStyleHorizontal"
/>
<Button
android:id="@+id/but"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/firstProgressBar"
android:text="增加进度"
/>
</RelativeLayout>
#4 SeekBar的使用方法与监听器OnSeekBarChangedListener
SeekBar的主要属性,它的进度是可以拖动的
进度最大值:max
当前进度:progress
次要进度值SecondaryProgress
OnSeekBarChangedListener的主要方法
onProgressChanged(SeekBarseekBar,int progress,boolean fromUser)
onStratTrackingTouch(SeekBarseekBar)
onStopTrackingTouch(SeekBarseekBar)
class SeekBarListener implements OnseekBarChangedListener{}
该对象指得是触发来监听器的SeekBar对象
frimUser的值是判断是否来自用户的输入,如果是来自用户
的拖拽导致的进度条改变,则返回true
#5RatingBar的用法与监听器onRatingBarChangedListener
主要属性
星星的个数numStars
当前等级:progress
每前进一格代表的分数stepSize
java代码:
packagecom.myapp.yuanyang.myapplication;
importandroid.content.DialogInterface;
importandroid.content.DialogInterface.OnClickListener;
importandroid.support.v7.app.ActionBarActivity;
importandroid.os.Bundle;
importandroid.view.Menu;
importandroid.view.MenuItem;
importandroid.view.View;
importandroid.widget.Button;
importandroid.widget.ProgressBar;
importandroid.widget.SeekBar;
publicclassMainActivityextendsActionBarActivity{
privateSeekBarseekBar;
privateButtonbut;
@Override
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.seekbar);
seekBar=(SeekBar)findViewById(R.id.seekbar);
but=(Button)findViewById(R.id.but);
seekBarListenerlistener=newseekBarListener();
seekBar.setOnSeekBarChangeListener(listener);
}
classseekBarListenerimplementsSeekBar.OnSeekBarChangeListener{
@Override
publicvoidonProgressChanged(SeekBarseekBar,intprogress,booleanfromUser){
System.out.println("Progress"+progress+"FromUser"+fromUser);
}
@Override
publicvoidonStartTrackingTouch(SeekBarseekBar){
System.out.println("ONstrat");
}
@Override
publicvoidonStopTrackingTouch(SeekBarseekBar){
System.out.println("OnStop");
}
}
@Override
publicbooleanonCreateOptionsMenu(Menumenu){
//Inflatethemenu;thisaddsitemstotheactionbarifitispresent.
getMenuInflater().inflate(R.menu.menu_main,menu);
returntrue;
}
@Override
publicbooleanonOptionsItemSelected(MenuItemitem){
//Handleactionbaritemclickshere.Theactionbarwill
//automaticallyhandleclicksontheHome/Upbutton,solong
//asyouspecifyaparentactivityinAndroidManifest.xml.
intid=item.getItemId();
//noinspectionSimplifiableIfStatement
if(id==R.id.action_settings){
returntrue;
}
returnsuper.onOptionsItemSelected(item);
}
}
xml代码:
<?xmlversion="1.0"encoding="utf-8"?>
<RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"android:layout_height="match_parent">
<SeekBar
android:id="@+id/seekbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>
<Button
android:id="@+id/but"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="看看"
android:layout_below="@id/seekbar"
/>
</RelativeLayout>
- 安卓学习第二十二天:ProgressBar与SeekBar与RatingBar
- SeekBar与RatingBar简介
- android:progressBar/seekBar/ratingBar学习记录
- ProgressBar +SeekBar +RatingBar
- ProgressBar、SeekBar、RatingBar
- progressBar与seekBar区别
- Android学习笔记(十九)——SeekBar与RatingBar
- Android阶段学习笔记7.22 之 ProgressBar SeekBar RatingBar
- Android之ProgressBar、SeekBar、RatingBar
- 安卓个人学习------ImageView,SeekBar,TableHost,ProgressBar的使用
- 安卓控件 seekbar 和 RatingBar
- ProgressBar与seekBar的区别
- Android之SeekBar与RatingBar简单实例
- android开发之seekBar与ratingBar
- rAndroid(11):进度条ProgressBar/SeekBar/RatingBar
- android *** Layout 11 ProgressBar && RatingBar && SeekBar
- Android基础控件 - ProgressBar、SeekBar和RatingBar
- 关于ProgressBar与SeekBar的使用
- java学习笔记
- Android 广播接收器BroadcastReceiver
- HDU:3333 Turing Tree (树状数组+离线处理+哈希+贪心)
- 通过实例来学习使用Linux KVM
- Struts2.3.14路由分析
- 安卓学习第二十二天:ProgressBar与SeekBar与RatingBar
- POJ2653——Pick-up sticks
- 字符串匹配的KMP算法
- 在servlet中通过servletcontext对象读取资源文件的模板代码
- 11g新特性:A useful View V$DIAG_INFO
- 2012年写的万年历
- Uva 10375
- Insertion-sort
- vs2005下载网页图片