Android该系统提供了一个水平进度条为我们展现了运行使用进展情况,水平进度条显示用于运行进度Clip Drawable技术

下面我们通过一个具体的例子来说明Clip Drawable使用。

还有我们要注意知识:

Clip0,此时是所有裁剪,图片看不见;

当级别为10000时,不裁剪图片,图片所有可见

程序执行结果:第一张为初始界面,第二张为点击5次界面,第三张为点击10的界面

    
 

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY3F0ZGR0/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" width="200" height="300" alt="">

新建一个名称为:Clip Drawable的Android project。

程序结构文件夹:

activity_main.xml

<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"> <ImageView
android:id="@+id/gril_img"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/clip"
android:contentDescription="@string/app_name"
/> <Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/Clip"
android:onClick="change"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="20dp"/>
</RelativeLayout>

clip.xml

<?xml version="1.0" encoding="utf-8"?>
<clip xmlns:android="http://schemas.android.com/apk/res/android"
android:drawable="@drawable/girl"
android:clipOrientation="horizontal"
android:gravity="left"
>
</clip>

strings.xml

<?xml version="1.0" encoding="utf-8"?>
<resources> <string name="app_name">ClipDrawable</string>
<string name="hello_world">Hello world!</string>
<string name="action_settings">Settings</string>
<string name="Clip">clip</string>
</resources>

MainActivity.java

package com.shen.clipdrawable;

import android.support.v7.app.ActionBarActivity;
import android.graphics.drawable.ClipDrawable;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.ImageView; public class MainActivity extends ActionBarActivity { private ImageView imageView; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 获取Imageview控件
imageView = (ImageView) findViewById(R.id.gril_img);
} @Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
} @Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
} public void change(View v) {
// 获得ClipDrawable对象
ClipDrawable clipDrawable = (ClipDrawable) imageView.getBackground();
// 设置裁剪级别,Clip类型的图片默认裁剪级别为0。此时是所有裁剪。图片看不见;
// 当级别为10000时。不裁剪图片,图片所有可见
// 当所有显示后。设置不可见
if (10000 == clipDrawable.getLevel()) {
clipDrawable.setLevel(0);
}
else {
clipDrawable.setLevel(clipDrawable.getLevel() + 1000);
} }
}

程序中用的资源图片:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY3F0ZGR0/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

源代码

版权声明:本文博客原创文章,博客,未经同意,不得转载。

Andorid Clip 实现自定义的进度条效果实例的更多相关文章

  1. Android 自定义水平进度条的圆角进度

    有时项目中需要实现水平圆角进度,如下两种,其实很简单     下面开始看代码,先从主界面布局开始看起: <?xml version="1.0" encoding=" ...

  2. Javascript 及 CSS3 实现进度条效果

    Javascript 及 CSS3 实现进度条效果 一:css2 属性clip实现网页进度条:  在实现之前,我们先来介绍一下clip属性,因为这个属性在css2.1中很少使用到,所以我们有必要来了解 ...

  3. 自定义环形进度条RoundProgressBar

    一.效果图: Canvas画圆环说明: 圆环宽度不必在意,只是画笔宽度设置后达到的效果. 二.实现步骤 1.自定义View-RoundProgressBar 2.设置属性resources(decle ...

  4. Android -- 真正的 高仿微信 打开网页的进度条效果

    (本博客为原创,http://www.cnblogs.com/linguanh/) 目录: 一,为什么说是真正的高仿? 二,为什么要搞缓慢效果? 三,我的实现思路 四,代码,内含注释 五,使用方法与截 ...

  5. Progress.js – 为页面上的任意对象创建进度条效果

    Progress.js 是一个 JavaScript 和 CSS3 的库,它帮助开发人员为网页上的每个对象创建和管理进度条效果.你可以设计自己的模板,进度条或者干脆定制. 您可以使用 Progress ...

  6. 创建一个jQuery UI的垂直进度条效果

    日期:2013-9-24  来源:GBin1.com 在线演示 缺省的jQuery UI只有水平的进度条效果,没有垂直的进度条效果,仅仅重新定义JQuery UI的CSS不能解决这个问题. 这里我们扩 ...

  7. CSS 实现滚动进度条效果

    参考:https://www.w3cplus.com/css/pure-css-create-scroll-indicator.html 前言:细化总结.参考的文章作者已经写的很详细了.这里在从初学者 ...

  8. WPF 简易进度条效果

    最近做一个项目,看到以前同事写的进度条效果不错,所以,拿来简化了下,不炫,但是项目中还是够用的. 还是,先来看下调用以后的效果 1.因为ProgressbBar的Foreground显示不得不一样,所 ...

  9. js实现进度条效果

    需求分析: 最近学习javascript客户端脚本语言,学到了两个定时器函数setInterval()和setTimeout(),回想起以前在网页上看到的进度条效果可以使用定时器来实现,所以完成了进度 ...

随机推荐

  1. LWP::UserAgent - Web user agent class Web 用户agent 类:

    LWPUserAgent: LWP::UserAgent - Web user agent class Web 用户agent 类: 概述: require LWP::UserAgent; my $u ...

  2. cocos2d-x游戏开发系列教程-坦克大战游戏之虚拟手柄控制坦克移动

    上篇显示了控制手柄,但是还不能用来控制坦克, 这篇将会讲手柄和坦克的移动结合起来. 1.先在CityScene场景中实现场景的虚函数virtual void onEnter(); onEnter在进入 ...

  3. 基于visual Studio2013解决C语言竞赛题之1024求和

          题目 解决代码及点评 /* 已知有N个无规律的正整数,请编程序求出其中的素数并打印出能被5整除的数之积. */ #include <stdio.h> # ...

  4. Amazon RDS的通用型存储(SSD)

    在今年的6月份,我们曾介绍过为Amazon EC2实例提供的基于SSD的弹性块级存储. 在公布几个月过后,这样的被称为通用型存储(SSD)的新型选择方式在创建新的EBS卷中已经占到了90%,我们从客户 ...

  5. gdb 远程qemu-arm调试

    把 c 编译成 arm 指令的可运行文件 /usr/bin/arm-linux-gnueabi-g++ hello.cpp cat hello.cpp #include <stdio.h> ...

  6. EasyUI - Combo组件

    -自定义下拉组件,有别于ComboBox下拉组件. 效果: html代码: <input id ="box" /> <div id ="fruits&q ...

  7. Appium 的安装启动

    Appium 的安装方式根据官网提供的是使用nodejs 安装,但是官方给出了三种方法 参考网址: appium下载地址: https://bitbucket.org/appium/appium.ap ...

  8. QSplashScreen无法背景透明的解决办法

    setWindowFlags(Qt::WindowStaysOnTopHint | Qt::SplashScreen | Qt::FramelessWindowHint); setAttribute( ...

  9. 【开发手记一】老生常谈:简简单单配置ZED板开发环境

    说明:整理之前项目博客,此系列之前发表于与非网 http://www.openhw.org/module/forum/thread-552476-1-1.html 在拿到开发板和配套教材之前,我们小组 ...

  10. Swift - 字符串(String)用法详解

    下面对String常用的属性和方法做个总结 1,判断是否为空:isEmpty 1 2 3 var str:String if str.isEmpty{ } 2,获取字符数量:countElements ...