Android攻城狮 progressBarprogressDialog
ProgressBar的关键属性 android:max="100" ——最大显示进度 android:progress="50" ——第一显示进度 android:secondaryProgress="80" ——第二显示进度 android:indeterminate="false" 设置是否模糊显示(indeterminate:模糊的、不明确的) true表示不精确显示进度,false表示精确显示进度 ---------------------------- 关键方法: (1)setProgress(int) 设置第一进度 (2)setSecondaryProgress(int) 设置第二进度 (3)getProgress() 获取第一进度 (4)getSecondaryProgress() 获取第二进度 (5)incrementProgress(int) 增加或减少第一进度 (6)incrementSecondaryProgress(int) 增加或减少第二进度 (7)getMax() 获取最大进度
自定义进度条:
在main.xml文件下的<Progress>的属性style改成:style="@android:style/Widget.ProgressBar.Horizontal" 然后,按住Ctrl,左击"@android:style/Widget.ProgressBar.Horizontal",就进入 styles.xml,这时将看到<style name="Widget.ProgressBar.Horizontal">,在其属性中有<item name="progressDrawable">@drawable/progress_horizontal</item> ,再次按住Ctrl并左击该属性,就进入了进度条样式的文件。创建完样式后,在 main.xml中的<Progress>里面添加属性: android:progressDrawable="@drawable/progress_bar" 就会覆盖原有的样式,实现了自定义进度条样式的效果。
1 /进度条: 监听和ProgressDialog对话框 2 //控制进度条的增加,减少,重置 3 4 5 public class MainActivity extends Activity implements OnClickListener { 6 private ProgressBar progressBar, progressBar2; 7 private TextView textView; 8 private Button add, reduce, reset; 9 private ProgressDialog progressDialog; 10 private Button button; 11 12 @Override 13 protected void onCreate(Bundle savedInstanceState) { 14 super.onCreate(savedInstanceState); 15 //-----------标题栏的进度条---------------- 16 //启用窗口特征,启用带进度和不带进度的进度条 17 requestWindowFeature(Window.FEATURE_PROGRESS); 18 requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS); 19 setContentView(R.layout.fragment_main); 20 //显示两种进度条 21 setProgressBarVisibility(true); 22 setProgressBarIndeterminateVisibility(true); 23 //max=10000 24 setProgress(8000); 25 //--------------------progressBar------------------------ 26 27 progressBar = (ProgressBar) findViewById(R.id.progressBar1); 28 progressBar2 = (ProgressBar) findViewById(R.id.progressBar2); 29 textView = (TextView) findViewById(R.id.textView1); 30 add = (Button) findViewById(R.id.add); 31 reduce = (Button) findViewById(R.id.reduce); 32 reset = (Button) findViewById(R.id.reset); 33 34 button = (Button) findViewById(R.id.button1); 35 button.setOnClickListener(this); 36 37 // 获取第一条进度条的进度----正在播放时的 38 int first = progressBar2.getProgress(); 39 40 // 获取第二条进度条的进度----缓冲 41 int second = progressBar2.getSecondaryProgress(); 42 // 获取进度条最大进度 43 int max = progressBar2.getMax(); 44 textView.setText("第一进度百分百:" 45 + (int) (first / (float) max * 100) + "%" 46 + (int) (second / (float) max * 100) + "%"); 47 add.setOnClickListener(this); 48 reduce.setOnClickListener(this); 49 reset.setOnClickListener(this); 50 } 51 52 @Override 53 public void onClick(View v) { 54 // TODO Auto-generated method stub 55 switch (v.getId()) { 56 case R.id.add: { 57 // 增加第一进度第二进度10刻度 58 progressBar2.incrementProgressBy(10); 59 progressBar2.incrementSecondaryProgressBy(10); 60 break; 61 } 62 63 case R.id.reduce: { 64 // 减少第一进度第二进度10刻度 65 progressBar2.incrementProgressBy(-10); 66 progressBar2.incrementSecondaryProgressBy(-10); 67 break; 68 } 69 70 case R.id.reset: { 71 progressBar2.setProgress(50); 72 progressBar2.setSecondaryProgress(80); 73 break; 74 } 75 case R.id.button1: { 76 // 页面风格: 77 // 1.新建progressDialog对象 78 progressDialog = new ProgressDialog(MainActivity.this); 79 progressDialog.setProgressStyle(progressDialog.STYLE_HORIZONTAL); 80 // 设置标题 81 progressDialog.setTitle("下载;"); 82 // 设置对话框里的文字信息 83 progressDialog.setMessage("欢迎大家下载"); 84 // 设置图标 85 progressDialog.setIcon(R.drawable.ic_launcher); 86 87 // progreBar的一些属性 88 progressDialog.setMax(100); 89 // 设置初始化的进度 90 progressDialog.incrementProgressBy(50); 91 // 进度条是明确显示进度的 92 progressDialog.setIndeterminate(false); 93 // 设置一个确定按钮 94 progressDialog.setButton(DialogInterface.BUTTON_POSITIVE, "确定", 95 new DialogInterface.OnClickListener() { 96 97 @Override 98 public void onClick(DialogInterface dialog, int which) { 99 // TODO Auto-generated method stub 100 Toast.makeText(MainActivity.this, "hahahha,你来了", 1) 101 .show(); 102 } 103 }); 104 // 是否可以通过返回按钮退出对话框 105 progressDialog.setCancelable(true); 106 // 显示progressDialog 107 progressDialog.show(); 108 break; 109 } 110 } 111 textView.setText("第一进度百分百:" 112 + (int) (progressBar2.getProgress()/ (float) progressBar2.getMax() * 100) 113 + "%" 114 + (int) (progressBar2.getSecondaryProgress()/ (float) progressBar2.getMax() * 100) + "%"); 115 } 116 117 }
转载于:https://www.cnblogs.com/my334420/p/6709128.html
Android攻城狮 progressBarprogressDialog相关推荐
- 写给即将/正在找工作的Android攻城狮
写给即将/正在找工作的Android攻城狮 版权声明:转载必须注明本文转自严振杰的博客:http://blog.yanzhenjie.com 这段时间从北上广深杭不断传来一两个月找不到工作的消息,我一 ...
- Android攻城狮ListView
适配器: 数据适配器:把复杂的数据填充在指定的视图界面上ArrayAdapter 数组适配器 用于绑定格式单一的数据 数据源:可以是集合或数组 SimpleAdapter 简单适配器:用于绑定格式复杂 ...
- Android攻城狮Gallery和ImageSwitcher制作图片浏览器
使用Gallery 和 ImageSwitcher 制作图片浏览器 Gallery介绍 我们有时候在手机上或者PC上看到动态的图片,可以通过鼠标或者手指触摸来移动它,产生动态的图片滚动效果,还可以根据 ...
- Android攻城狮GestureDetector和GestureOverlayView
手势识别 可以通过以下两种方式实现: 1. 使用GestureDetector 2. 使用GestureOverlayView(属于线程的控件)手势交互过程(原理): 1. 触屏一刹那,触发 Moti ...
- Android攻城狮fragment
1 //1,fragment静态加载:MainActivity MainActivty1_2 Myfragment1 2 //2,fragment动态加载 :MainActivity Myfragme ...
- Android攻城狮ScrollView
ScrollView 滚动视图 滚动视图是指当前拥有很多内容,屏幕显示不完整时,需要通过滚动来显示完整的视图. ----------------------------- ScrollBar分两种: ...
- Android攻城狮ViewFlipper
使用ViewFlipper实现屏幕切换动画效果. ViewFlipper和ViewPager一样,都是Android自带的一个多页面管理控件,不同的是ViewPager是手动切换页面,而ViewFli ...
- Android攻城狮数据存储之SharedPreferences
Android的四种数据存储方式: 1. SharedPreferences 2. SQLite 3. Content Provider 4. File --------------------- S ...
- Android攻城狮认识ContextMenu
什么是ContextMenu? 例如Windows系统的右键菜单,在Android中长按某个文件夹,会跳出菜单,这个菜单就是ContextMenu. ContextMenu与OptionMenu的区别 ...
最新文章
- c++ 虚函数_到底什么情况下会合成默认构造函数?
- 使用bash工具创建ssh key
- android string json,安卓之String json解析
- 关于计算机的发展过程及基础知识正确的是,2011doc-计算机基础知识.doc
- [导入]对iis写权限的利用
- editor多功能文本框在有些计算机上不能正常加载,解决方法,本人用的是把js调用方法放到body/body后面)...
- R-CNN , Fast R-CNN , Faster R-CNN原理及区别
- java velocity详解_[velocity] velocity详解
- 成为一名架构师得学习哪些知识?
- hc06蓝牙模块介绍_微测评 | 小米智能插座蓝牙网关版
- apache2 python mysql_Ubuntu配置Django+ Apache2+ mysql
- java编程题全集及答案_JAVA编程题全集(100题及答案)q
- javascript实现根据汉字获取拼音或者获取拼音首字母
- android代码 发警报音,Android设置多个警报
- java fillrect_Java graphics2D fillRect无法使用半透明颜色正常...
- fpga控制vga显示彩色图片
- 如何实现 “中间这几个字要加粗,但是不要太粗,比较纤细的那种粗” ?
- ios 中webView加载html文本图片显示不全
- 怎样选择ADC芯片?
- 有时候可用 UIWebView 代替 UITextView,解决行间距问题
热门文章
- Swagger 配置多个接口文档实现 和 实现多包扫描的配置方式
- 重拾Java基础知识:设计模式
- div实现拖动时候出现禁止图标解决——e.preventDefault e.preventDefault();
- 慎用yum update
- 多期DID和事件研究法含文献和do代码
- 笔记 C++11 std::minmax_element() 的使用(寻找最小值和最大值)
- Oracle安装后检查内容,ORA-12541:TNS:no listener错误解决方法
- 《扫雷》游戏递归算法分析
- file_operations结构体介绍
- Gitea配置文件说明