Android中ProgressBar、RatingBar、SeekBar三种进度条的区别(十一)

EtherCAT简介 EtherCAT(EtherNet Control Automation Technology)是由德国公司BECKHOFF公司于2003年提出的实时工业以太网技术。其具有高速、高数据有效率的特点,支持多种设备的连接拓扑结构。从站节点使用专用的控制芯片,例如:microchip公司的Lan9252、BECKHOFF公司的ET1100等ESC(EtherCAT slave controller)芯片。主站的搭建方式有很多,例如:开源主站IGH、SOEM、商业化主站TwinCAT等。 阅读详情

当一个应用程序在后台执行时,前台界面不会产生变化,但因为 Android 各机型配置大不相同,有时执行程序的过程中用户不知道发生了什么事,但界面却发生了变化。这时需要与用户交互的进度条用来提示用户后台执行程序的进度,这种做法是符合人性化的,进度条充分的符合上面的需求。进度条的详解如下: 

1、进度条风格 
2、进度条主要属性方法 
3、模拟程序运行,使用进度条 
1、进度条分类 

长形进度条 (progressBarStyleHorizontal) 
大圆形进度条(progressBarStyleLarge) 
小圆形进度条 (progressBarStyleSmall) 
默认风格 (progressBarStyle) 

package com.itarchy.bar;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class MainActivity extends Activity {

	private Button button1;
	private Button button2;
	private Button button3;
	private Button button4;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);

		//ProgreBar
		button1 = (Button) this.findViewById(R.id.button1);
		button1.setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View v) {
				startActivity(new Intent(MainActivity.this,
						ProgreBarActivity.class));

			}
		});

		//ProgreDialog
		button2 = (Button) this.findViewById(R.id.button2);
		button2.setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View v) {
				startActivity(new Intent(MainActivity.this,
						ProgreDialogActivity.class));
			}
		});

		//RatingBar
		button3 = (Button) this.findViewById(R.id.button3);
		button3.setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View v) {
				startActivity(new Intent(MainActivity.this,
						RatingBarActivity.class));
			}
		});
		
		//SeekBar
		button4 = (Button) this.findViewById(R.id.button4);
		button4.setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View v) {
				
				startActivity(new Intent(MainActivity.this,
						SeekBarActivity.class));
			}
		});

	}

}

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <TextView
        android:id="@+id/title"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="25dip"
        android:text="各种进度条"
        android:textSize="25sp" />

    <Button
        android:id="@+id/button1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/title"
        android:layout_marginTop="15dip"
        android:gravity="center_horizontal"
        android:text="ProgressBar"
        android:textSize="25sp" />

    <Button
        android:id="@+id/button2"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/button1"
        android:layout_marginTop="15dip"
        android:gravity="center_horizontal"
        android:text="ProgressDailog"
        android:textSize="25sp" />

    <Button
        android:id="@+id/button3"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/button2"
        android:layout_marginTop="15dip"
        android:gravity="center_horizontal"
        android:text="RatingBar"
        android:textSize="25sp" />
    <Button
        android:id="@+id/button4"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/button3"
        android:layout_marginTop="15dip"
        android:gravity="center_horizontal"
        android:text="SeekBar"
        android:textSize="25sp" />

</RelativeLayout>
(一)当在加载数据到litView或者其他控件上时,用户会有一个等待的时间,为了给用户一个友好的提示,通常我们会显示一个ProgressBar,待数据加载完毕后,ProgressBar自动消失。
package com.itarchy.bar;

import android.app.Activity;
import android.os.Bundle;
import android.view.Window;
import android.widget.ProgressBar;

public class ProgreBarActivity extends Activity {

	private ProgressBar mProgressBar;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		requestWindowFeature(Window.FEATURE_PROGRESS); // 进度指示器功能   
		requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
		setContentView(R.layout.progress);
		// 标题栏显示不确定的进度的进度条
		setProgressBarIndeterminateVisibility(true);

	}
} 

(二)执行某个耗时操作时,为了安抚用户等待的烦躁心情我们一般会使用进度条之类的空间,在android中让大家最 容易想到的就是progressbar或者progressDialog,区别在于前者是一个控件,后者是对话框。由于一些需求在弹出进度条时不希望用户 能够操作其他控件,所以只能使用progressDialog,这个时候有遇到了一个问题,我不想要progressDialog的黑色框框,感觉这样跟 应用的整体风格不协调,这个时候就考虑了写一个自定义的progressDialog。

package com.itarchy.bar;

import android.app.Activity;
import android.app.ProgressDialog;
import android.os.Bundle;
import android.os.Handler;
import android.widget.ProgressBar;

public class ProgreDialogActivity extends Activity {

	private ProgressDialog pdialog;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		pdialog = ProgressDialog.show(ProgreDialogActivity.this, "加装网络",
				"努力加装中...");

		// 3000之后,执行run()函数
		new Handler().postDelayed(new Runnable() {

			@Override
			public void run() {
				pdialog.hide();
			}
		}, 3000);

	}

}

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <RatingBar
        android:id="@+id/rb1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:numStars="6"
        android:stepSize="1" />

    <RatingBar
        android:id="@+id/rb"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:numStars="3"
        android:rating="1"
        android:layout_gravity="center_horizontal"
        android:stepSize="0.5" />

</LinearLayout>

(三)拖动条(SeekBar)组件与ProgressBar水平形式的显示进度条类似,不过其最大的区别在于,拖动条可以由用户自己进行手工的调节,例如当用户需要调整播放器音量或者电影的播放速度都会使用到拖动条SeekBar类。

package com.itarchy.bar;

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.widget.SeekBar;
import android.widget.SeekBar.OnSeekBarChangeListener;

public class SeekBarActivity extends Activity {

	private SeekBar mSeekBar;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.seekbar);
		mSeekBar = (SeekBar) this.findViewById(R.id.seekbar);
		// 对SeekBar控件监听
		mSeekBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {

			@Override
			public void onStopTrackingTouch(SeekBar seekBar) {
				Log.i("TAG", "SeekBar--onStopTrackingTouch");

			}

			@Override
			public void onStartTrackingTouch(SeekBar seekBar) {
				Log.i("TAG", "SeekBar--onStartTrackingTouch");

			}

			@Override
			public void onProgressChanged(SeekBar seekBar, int progress,
					boolean fromUser) {
				Log.i("TAG", "SeekBar--onProgressChanged");
				Log.i("TAG", "SeekBar--progress=" + progress);
				Log.i("TAG", "SeekBar--fromUser=" + fromUser);

			}
		});

	}

}
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:background="#000000"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <SeekBar
        android:id="@+id/seekbar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:max="100"
        android:progress="10"
        android:maxHeight="3px"
        android:progressDrawable="@drawable/seekbar_bg"
        android:thumbOffset="5px"  
        android:thumb="@drawable/thumb_ttpod" />

</LinearLayout>

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.itarchy.bar"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="18" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.itarchy.bar.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name="com.itarchy.bar.ProgreBarActivity"
            android:theme="@android:style/Theme.Black" />
        <activity android:name="com.itarchy.bar.SeekBarActivity" />
        <activity android:name="com.itarchy.bar.ProgreDialogActivity" />
        <activity android:name="com.itarchy.bar.RatingBarActivity" />
    </application>

</manifest>





CKA-CN考试之路----16 所以结合本题,如果有多个文件中都存在同一个值,务必统一,或者修改最后一个次序的文件。中以不同的文件名来区分不同目的的配置会更有利于阅读.就像本题中的。但当有多个文件中存在同一个参数的不同值,最后会生效哪个值?中,但随着配置越来越多不怎么容易阅读.当多个文件同时存在一个参数,但值又不同。有时候我们会将所有内存参数全部写在。确认服务状态(2个红框中的内容) 阅读详情

相关推荐

android 等级经验进度seekbar

横向scollView实现可滑动seekbar效果 初始化可滑动到当前经验位置,可在经验上方加经验值悬窗 博客地址 http://blog.csdn.net/qq_31390699/article/details/78912620

progressBarseekBar区别

一、ProgressBar进度条       在某项延续性工作的进展过程中为了不让用户觉得程序死掉了,需要有个活动的进度条,表示此过程正在进行中。 用户浏览网页的时候,中间肯定有个传输过程,所以用进度条让用户耐心等待。再比如在下载应用中,它也会有进度条显示下载进度。 ProgressDialog是继承自Android.app.ProgressDialog所设计的互动对话窗

lollipop的专栏 4862

islec:ISL固液平衡计算器-开源

ISL平衡计算器,它使用Harvie扩展的Pitzer离子相互作用电解质溶液模型粒子群优化Gibbs自由能最小化(GEM)来处理固液平衡计算。 ISLEC是进行固液平衡计算的有效工具,可以模拟海水盐湖盐水的结晶路径。 ISLEC适用于相关研究Craft.io设计。

Android进度条(ProgressBar)、拖动条(SeekBar)

Android进度条(ProgressBar)、拖动条(SeekBar)

weixin_42602900的博客 8870

安卓进度条ProgressBarSeekbar

Android 中的一个进度条控件,用于显示正在进行的任务的进度。它可以以水平或圆形的形式展示进度,并提供了多种样式属性来满足不同的需求。SeekBarAndroid 中的一个可滑动条控件,用于允许用户通过滑动来选择一个数值或调整某种设置。它通常用于音量控制、亮度调节、进度选择等场景。SeekBar 继承自 ProgressBar 类。

A125679880的博客 8312

Andriod学习笔记——SeekBar

SeekBar就是进度条,与ProgressBar区别就是它支持随意拖动,一般用于视频音频等多媒体播放。 Progress 进度条进度值 SecondaryProgress 缓冲区进度值 Max 进度条最大值 Thumb 进度条可拖动的图标 ThumbOffset 图标的偏移量 ProgressDrawable 进度条背景,可对缓冲区,进度,背景分别设置不同的颜色或图片 <?xml versio

Jokeqiao的博客 477

ProgressBar进度条SeekBar拖动条(滑动条)

一、ProgressBar进度条 在某项延续性工作的进展过程中为了不让用户觉得程序死掉了,需要有个活动的进度条,表示此过程正在进行中。 用户浏览网页的时候,中间肯定有个传输过程,所以用进度条让用户耐心等待。再比如在下载应用中,它也会有进度条显示下载进度。 二、SeekBar拖动条(滑动条) SeekBar可以作为音乐播放器的进度指示调整工具,音量调整工具等,SeekBarProgressBar的一个子类。 ...

weixin_44911775的博客 978

Android学习 21->进度条SeekBarRatingBar

我们在播放器中使用进度条时就要用到可手动拖动的进度条SeekBar;当我们在对物品进行评价的时候一般都会使用到评分进度条RatingBar。         SeekBar是一种特殊的进度条,其与ProgressBar区别在于,SeekBar支持用户手动调整进度,可以实现进度条的个性化设置。         监控SeekBar的进度变化的实现方法如下: seekBar.setOnSeekB

随波逐流的博客 738

Android中的进度条、拖动条及星级评分控件

进度条控件(ProgressBar)、拖动条控件(SeekBar)、星级评分控件(RatingBar)Android开发中都是比较常用的控件。 进度条用来显示一个耗时动作的进度,但它并不能自动显示进度的变化需要通过方法来控制。进度条样式大体有两种:水平进度条圆形进度条(即定时进度条不定时进度条,也叫确定的进度条不确定的进度条),默认为圆形进度条。圆形进度条无法显示进度比例,只要其可见就会

QuietShake的博客 4267

第4组UI-ProgressBar及子类之ProgressBar(进度条)SeekBar(拖动条)RatingBar(星级评分条)

ProgressBar 概述 xml属性 详细介绍 SeekBar拖动条 概述 xml属性 监听器 范例 RatingBar星级评分条 概述 xml属性 监听事件 范例ProgressBar及其子类的继承关系图: ProgressBar1.概述:用于向用户显示某个耗时操作完成的百分比。2.xml属性:1)各种风格的进度条,通过style属性,支持下列属性值: @android:style/Wid

womengmengyan的博客 1226

Android零基础入门第51节:进度条ProgressBar

进度条是UI界面中一种非常实用的组件,通常用于向用户显示某个耗时操作完成的百分比。

鑫鱻的博客 1460

Android UI之ProgressBar

前言   开门见山,开篇明意。这篇博客主要讲解一下AndroidProgressBar控件以及间接继承它的两个子控件SeekBarRatingBar的基本用法,因为其有继承关系,存在一些共有特性,所以在一篇博客中讲解。下面先简单描述一下这三个控件: ProgressBar是一个进度条控件,一般在需要做某个比较耗时的操作的时候,向用户展示执行进度,以免用户以为已经失去响应。SeekB

switch(mind) 2438

Android控件之ProgressBar进度条),ToggleButton/SwitchBar(开关按钮)SeekBar(拖动条)/RatingBar(等级评分)

1.ProgerssBar(进度条)       平时我们在下载东西的时候都会遇见进度条进度条主要分为两种,一种是圆形的进度条还有一种是矩形的进度条。怎么去得到它们呢,在写控件的时候都是写ProgressBar,这时我们需要通过属性来得到不同的进度条: 矩形进度条ProgressBar android:id="@+id/pb_main_progressBar" s

phy1997的博客 1309

AndroidProgressBar及其子类SeekBarRatingBar(一)

1.ProgressBar分为不定时进度条水平进度条两类. 或者叫做确定的不确定的进度条进度条也是UI界面中一种非常实用的组件, 通常用于向用于显示某个耗时操作完成的百分比。 进度条可以动态地显示进度,因此避免长时间执 行某个耗时操作时,让用户感觉到失去了响应, 从而更好地提高用户界面的友好性。 Android支持几种风格的进度条,通过style属性可以为ProgressBa

重心开始,重新开始 897

Android基础控件ToggleButton→ Switch→ SeekBarProgressBar 控件

android基础控件ToggleButton→  Switch→ SeekBarProgressBar  控件 后续还有很多用法,再补充 ToggleButton →关闭声音按钮 java.lang.Object   android.view.View      android.widget.TextView         android.widget.Button

CSDNYUANDAIMAXUEXI的博客 995

Android开发自学笔记(Android Studio)—4.5 ProgressBar及其子类

一、前言 ProgressBar本身代表了进度条组件,它还派生出了两个常用的组件:SeekBarRatingBar,他们的使用方法类似,只是显示界面有一定的区别。我们看一下API文档中的说明: 从图中我们是可以直接看到ProgressBar继承自View类,直接子类有AbsSeekBarContentLoadingProgressBar,间接子类有RatingBarSeek...

angdian2335的博客 313

Android界面编程之六 第五组UI组件:ProgressBar及其子类

ProgressBar本身代表了进度条组件,它还派生了两个常用组件:SeekBarRatingBar。 它其子类在用法上十分相似,只是显示界面上有区别 2.6.1 ProgressBar的功能与用法 Android支持几种风格的进度条,通过style属性可以为ProgressBar指定风格。其支持的属性有: @android:syle/Widget.Prog

编程问题与思索 629

android 横向进度条_59、Android进度条使用详解

ProgressBarAndroid下的进度条,也是为数不多的直接继承于View类的控件,直接子类有AbsSeekBarContentLoadingProgressBar,其中AbsSeekBar的子类有SeekBarRatingBarProgressBar一般用于显示一个过程,例如数据加载过程,文件下载进度,音乐播放进度等。ProgressBar的使用注意:1、Progress...

weixin_39963174的博客 812

ProgressBar及其子类

ProgressBar是一组重要的组件,ProgressBar本身代表了进度条组件,还派生了两个常用的组件:SeekBarRatingBarProgressBar及其子类在用法上十分相似,只是显示界面有一定的区别。 一、进度条ProgressBar)的功能与用法 进度条是UI界面中一种非常实用的组件,通常用于向用户显示某个耗时操作完成的百分比。进度条可以动态地显示进度,因此避免长

山鸡_1993 654

Android 学习之路 之 第5组UI组件:ProgressBar及其子类(十三)

ProgressBar 组件也是一组重要的组件,ProgressBar 本身代表了进度条组件,它还派生了两个常用的组件:SeekBar RatingBarProgressBar 及其子类在用法上十分相似,只是显示界面有一定的区别。因此本节把它们归为一类,针对它们的共性集中讲解,并突出介绍它们的区别ProgressBar 及其子类的继承关系图如图 2.50 所示。 1,进度条

674

进度条seekbar

一、SeekBar SeekBar是一种特殊的进度条,其与ProgressBar区别在于,SeekBar支持用户手动调整进度,可以实现进度条的个性化设置。SeekBar的继承关系如下: java.lang.Object ->android.view.View   ->android.widget.ProgressBar    ->android.widget.AbsSeekBar  

lizhong 774
上一篇: Android中Spinner控件的使用(十)
下一篇: Android中ExpandableListVivew可扩展的ListView(十二)
itarchy
博客等级 码龄11年 7粉丝 29原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值