Android学习—超简单实现带进度ProgressBar滚动条

思路:想在ProgressBar上显示百分比进度,百度、google搜索一下,满屏都是那个TextProgressBar,我没引用那个,当时觉得应该可以更简单的实现,于是直接就在UI上面尝试,把ProgressBar放在RelativeLayout布局中,并在ProgressBar后面加个TextView,使这两个控件叠加就解决了,下面是xml,可以参考~

效果图:

XML:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal" 
    android:layout_gravity="center"
    android:background="#FFFFFF">
 
       
    <TextView
        android:id="@+id/tvGraphType"
        android:layout_width="84dp"
        android:layout_height="wrap_content"
        android:padding="2sp"
        android:gravity="right"
        android:maxLength="6"
        android:textColor="#666666"           
        android:text="type"
        android:textSize="13sp"/>
    <RelativeLayout        
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical">
        <ProgressBar
             android:id="@+id/pbGraph"
             style="?android:attr/progressBarStyleHorizontal"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
             android:gravity="right"
             android:padding="2sp"
             android:progressDrawable="@drawable/pbarcolor_out" 
             android:layout_marginLeft="4dp"
             android:layout_marginRight="4dp" 
             android:layout_marginBottom="4dp"/>
        <TextView
             android:id="@+id/tvGraphPercent"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
             android:gravity="center"
             android:textColor="#666666"           
             android:text="%"
             android:textSize="13sp"/>
    </RelativeLayout>   
             
</LinearLayout>

进度条上百分比进度的计算也贴一下吧:

   //pbOuts 是ProgressBar,outPercent 是用于显示百分比的TextView
   holder.pbOuts.setMax(Graph.getRound(Maxout));
   holder.pbOuts.setProgress(Graph.getRound(Outcomes));
   if (Maxout>0) {
    holder.outPercent.setText(String.valueOf(Graph.getRound((Outcomes*100/Maxout)))+"%");
   }else {
    holder.outPercent.setText("0%");
   }
   holder.outPercent.bringToFront();//控件叠加时,显示在最上面,这句很重要
时间: 2024-08-01 22:42:55

Android学习—超简单实现带进度ProgressBar滚动条的相关文章

Android UI组件进阶(1)——带进度条的按钮

Android UI组件进阶(1)--带进度条的按钮 本节引言: 这个系列是继Android UI组件实例大全后的进阶系列,在该系列中我们将进一步的学习 Android UI组件,建议阅读本系列前线学习下UI组件实例大全系列,掌握基本组件的使用; 当然你也可以直接学习本系列!好了,废话不多说,直接开始第一节吧!本节要演示的是: 带进度条的按钮!相信大家在360手机助手到看到这个东东吧: 本节要实现的就是下方这个点击后显示进度的按钮 效果图: 必备基础: 1.进度条的一些属性: backgroun

Android学习之简单的数据存储

在Android中,数据存储是开发人员不可以避免的.Android为开发者提供了很多的存储方法,在前面的博客中,已经讲述了sqlite存储数据.今天将介绍用SharedPreferences来存储数据,它可以将数据保存在应用软件的私有存储区,存储区的数据只能被写入这些数据的软件读取.SharedPreference通过键值对的方法存储数据. 1.SharedPreference存储简单数据 SharedPreference可以存放简单的String.Boolean.Int等对象. 1 <Rela

Android的下拉刷新带进度条效果

首先看一下运行效果图,程序的下拉刷新参考了视频,在视频页面也提供了源码下载, http://www.imooc.com/learn/135 本篇主要说在此基础上增加了进度条的快速旋转和递增递减处理,在文章最后也会给出源码,这里主要描述一下所用的一个类 RoundProgressBar package com.cayden.listview; import android.content.Context; import android.content.res.TypedArray; import

Android学习笔记-简单聊天界面的实现

之前写过一次,但是莫名其妙的找不到了,今天重新发一次 先来写一个Bean文件,用来存储聊天记录 JavaBean.java 1 package com.example.androidliaotian; 2 3 public class JavaBean { 4 private String neirong; 5 private String time; 6 public String getNeirong() { 7 return neirong; 8 } 9 public void setNe

qt自己定义搜索框(超简单,带效果图)

1. 什么也不要说.先上效果图: 2. 代码 头文件: #ifndef APPSEARCHLINE_H #define APPSEARCHLINE_H #include <QLineEdit> class AppSearchLine : public QLineEdit { Q_OBJECT public: AppSearchLine(QWidget *parent = 0); }; #endif // APPSEARCHLINE_H 源文件 #include "appsearchl

android学习ProgressBar的简单使用

android 提供的ProgressBar控件分为两种,一种是不带进度的进度条,一种是带进度的进度条,如果可以计算任务的完成量那么就用带进度条的,如果无法计算任务量,那么就使用不带进度的进度条.ProgressBar如果说只使用系统提供的,那就很简单,就只有那些属性方法,但是感觉比较难得就是ProgressBar的样式,一般做应用都不会直接使用系统提供的,而是在它的额基础上做进一步的美化. ProgressBar的关键属性 android:max 最大值 android:proress 第一进

Android学习笔记_76_Android ProgressBar 进度条

android 进度条的样式  例1:(默认样式(中等圆形))Xml代码 <ProgressBar      android:id="@+id/progressBar1"     android:layout_width="wrap_content"      android:layout_height="wrap_content"      /> 例2:(超大圆形)Xml代码 <ProgressBar      android

Android的ProgressBar进度条-android学习之旅(三十一)

ProgressBar 简介 ProgressBar是一种很常用的Ui,用于给复杂的操作显示进度,提供更好的用户相应.使用setProgress()incrementProgressBy()来设置进度和显示进度的增加或减少,正数表示增加,负数表示减少. ProgressBar的风格 ProgressBar 代码示例 布局代码 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns

[学习总结]7、Android AsyncTask完全解析,带你从源码的角度彻底理解

我们都知道,Android UI是线程不安全的,如果想要在子线程里进行UI操作,就需要借助Android的异步消息处理机制.之前我也写过了一篇文章从源码层面分析了Android的异步消息处理机制,感兴趣的朋友可以参考 Android Handler.Message完全解析,带你从源码的角度彻底理解 . 不过为了更加方便我们在子线程中更新UI元素,Android从1.5版本就引入了一个AsyncTask类,使用它就可以非常灵活方便地从子线程切换到UI线程,我们本篇文章的主角也就正是它了. Asyn