ShapeDrawable】的更多相关文章

今天做项目碰到一个这样的情况,就是颜色指示框,用的是正方形边框是黑色的,里面填充颜色,颜色值是动态的,为了解决这个问题,查了好多资料,终于找到解决的方法,利用ShapeDrawable,我们自定义一个CustomShapeDrawable类继承ShapeDrawable,代码: public class CustomShapeDrawable extends ShapeDrawable { private final Paint fillpaint, strokepaint; public Cu…
在Android中的View设置背景时,使用ShapeDrawable有可能出现无法上色的问题(最终背景为黑色),例如,使用如下的代码为控件设置颜色时,控件背景将会变成黑色 ShapeDrawable drawable=new ShapeDrawable(); Canvas canvas1 = new Canvas(); Paint paint=new Paint(); paint.setColor(Color.rgb(0x20, 0xAC, 0xFF)); Shape shape=new Ov…
ShapeDrawable ShapeDrawable用于定义一个基本的几何图像(如,矩形.圆形.线条.......). 定义ShapeDrawable的XML文件的根元素是<shape.../>,该元素可指定如下属性: android:shape=["rectangle"|"oval"|"ling"|"ring"]——指定定义那种类型的几何图形. 实例如下:椭圆.渐变背景的文本框 drawable资源文件==&g…
ShapeDrawable 用于定义一个基本的几何图形(如矩形.圆形.线条等),定义 ShapeDrawable 的 XML 文件的根元素是<shape.../>元素,该元素可指定如下属性. 示例: main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/and…
ShapeDrawable用于定义一个基本的几何图形(如矩形.圆形.线条等),定义ShapeDrawable的XML文件的根元素是<shape.../>元素,该元素可指定如下属性. android:shape=["rectangel"|"oval"|"line"|"ring"]:指定定义哪种类型的集合图形. 定义ShapeDrawable对象的完整语法格式如下: <shape xmlns:android=&q…
第一篇博客中,我已经Canvas.Paint.Shader.Xfermode这些对象做了总结,而现在这篇文章主要介绍BitmapShader位图渲染,Xfermode如何实际应用,还有形状的绘制.不过本文还是只重写onDraw一个方法,像OnMeasure.OnLayout暂时不去研究,工欲善其事必先利其器嘛,先把可能用到的东西研究清楚再说. 有什么其它问题以及建议,欢迎留言. 工具类:ViewHelper(View处理常用方法封装) 安卓自定义控件(一)Canvas.Paint.Shader.…
引用一下ShapeDrawable的类的说明: java.lang.Object    ? android.graphics.drawable.Drawable      ? android.graphics.drawable.ShapeDrawable Class Overview     A Drawable object that draws primitive shapes. A ShapeDrawable takes a Shape object and manages its pre…
 Android ShapeDrawable之OvalShape.RectShape.PaintDrawable.ArcShape Android图形图像基础之OvalShape.RectShape.PaintDrawable.ArcShape.写一个例子说明. 准备一个布局,布局里面竖直方向排列若干TextView: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:andr…
版权声明:本文为博主原创文章,未经博主允许不得转载. Gradient,渐变,是在界面设计中最经常用到的一种技巧,只要涉及到颜色的处理,浓妆淡抹总相宜,说的就是它. 在Android中,当然也提供了这样的技能,就看我们能不能 get it了?人比较笨,还是得从基础学习,再慢慢来熟悉它. 我们在 res / drawable/ 中 创建一个xml,代码如下: <?xml version="1.0" encoding="utf-8"?> <shape …
在Android中, 很多时候系统原生的控件的格式并不能满足我们的需求,我们想要更加好看点的样式,像什么圆角矩形啊,颜色渐变啊,阴影效果啊等等的,这个时候就是我们的 ShapeDrawable发挥效果的时候了,接下来我们这两篇文章就来说一下Shape的一些应用吧,掌握点基础知识,才能好好更好地去应用啊. 其实很多东西并不难,我们也不是不懂,但是关键得懂得总结呀,对吧. 1)首先,我们要在res/drawable/ 路径下创建一个xml文件,其格式如下(这是在Android的官方文档中拿出来的,我…
package com.loaderman.customviewdemo; import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Rect; import android.graphics.Region; import android.graphics.drawable.ShapeDrawable; import…
前言 ShapeDrawable一开始我以为它是对应xml文件属性里的shape的画图,后来发现我错了... 其实ShapeDrawable更像是一共自由度更大跟偏向与实现draw()方法的一共图像绘制类.所以,它的优点就是可以有更大的自由在代码里绘制一个你想要的图形,缺点是它搞起来有点不太方便,对于只需要简单的图形还不如GradientDrawable方便. ShapeDrawable是靠new一个继承Shape的类,来实现方便你的绘制的(其实底层原理就是View的draw()那套东西).我们…
Shape可以定义矩形.椭圆形.线条.圆形 <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape=["rectangle" | "oval" | "line" | "ring&q…
我们今天接着来看一下Shape中的stroke属性,stroke其实就是边缘的意思,当我们在定义画笔的时候,有很多时候会用到 FILL 和 STROKE,前者能够画出一个实心的形状,而后者就画出一个空心的图形,所以在这里,stroke表示同样的意思,就是描边. 它只有四个属性: 1)Android:width,表示的是线的粗细. 2)android:color,表示的是线的颜色. 3)android:dashGap,表示的是一条虚线,gap表明是虚线中线与线间的的空隙. 4)android:da…
形状的Drawable咯,定义基本的几何图形,如(矩形,圆形,线条等),根元素是<shape../> 节点比较多,相关的节点如下: ① <shape>: ~ visible:设置是否可见 ~ shape:形状,可选:rectangle(矩形,包括正方形),oval(椭圆,包括圆),line(线段),ring(环形) ~ innerRadiusRatio:当shape为ring才有效,表示环内半径所占半径的比率,如果设置了innerRadius, 他会被忽略 ~ innerRadiu…
Android XML shape 标签使用详解   一个android开发者肯定懂得使用 xml 定义一个 Drawable,比如定义一个 rect 或者 circle 作为一个 View 的背景.但是,也肯定也有人在能使用 Drawable 的地方选择使用一张 png 图(或者是一张 .9 图)作为 View 的背景,因为后者把问题交给 UI 设计人员去了,省事.当然,使用图片这种在项目中也很常见,如果不考虑 apk 大小,内存占用问题的话,是没有任何问题的.如果要给 apk 瘦身,减少内存…
Android GradientDrawable使用优势: 1. 快速实现一些基本图形(线,矩形,圆,椭圆,圆环) 2. 快速实现一些圆角,渐变,阴影等效果 3. 代替图片设置为View的背景 4. 可以减少apk大小,提升用户下载意愿 5. 还可以减少内存占用 6. 方便修改与维护 基于上面几种优势,我们很多时候都会选择使用android的shape,下面分别介绍shape的静态使用和动态使用 1. GradientDrawable的静态使用(xml中使用shape标签定义) 在drawabl…
title: 2016-5-5未命名文件 tags: UI适配,图片资源 grammar_cjkRuby: true --- 概述: 本文整理了Android开发中,图片资源的提供方式和使用方式.包括图片文件的文件组织,nine-path图片,系统选择不同设备针对的图片时的规则等.可以在Android开发文档中,Develop > API Guide > App Resources 目录找到有关应用资源的更全面的介绍. Note: 在Android 3.2之后的版本,有新的资源组织方式,本文只…
一.相关概念 1.Drawable就是一个可画的对象,其可能是一张位图(BitmapDrawable),也可能是一个图形(ShapeDrawable),还有可能是一个图层(LayerDrawable),我们根据画图的需求,创建相应的可画对象 2.Canvas画布,绘图的目的区域,用于绘图 3.Bitmap位图,用于图的处理 4.Matrix矩阵 二.Bitmap 1.从资源中获取Bitmap Resources res = getResources(); Bitmap bmp = BitmapF…
第五章 Android使用统一的Intent对象来封装“启动意图”,不管是启动Activity.Service组件.或者BroadcastReceiver等,提供了一致的编程模型.Intent设计有点类似于Struts2框架中的逻辑视图设计. Intent还是应用程序组件之间通信的重要媒介:数据封装成Bundle对象,Intent携带Bundle对象. 5.1 Intent对象详解 5.2 Intent的属性及intent-filter配置 5.2.1 Component属性 5.2.2 Act…
自定义控件学习 https://github.com/GcsSloop/AndroidNote/tree/master/CustomView 小良自定义控件合集 https://github.com/Mr-XiaoLiang 自定义控件三部曲 http://blog.csdn.net/harvic880925?viewmode=contents Android 从0开始自定义控件之View基础知识与概念 http://blog.csdn.net/airsaid/article/details/5…
1.example_osganimate一)演示了路径动画的使用(AnimationPath.AnimationPathCallback),路径动画回调可以作用在Camera.CameraView.MatrixTransform.PositionAttitudeTransform等四种类型的节点上.二)演示了osgSim::OverlayNode的使用 2.example_osganimationeasemotion一)演示了osgAnimation::EaseMotion的使用,EaseMot…
一.相关概念 1.Drawable就是一个可画的对象,其可能是一张位图(BitmapDrawable),也可能是一个图形(ShapeDrawable),还有可能是一个图层(LayerDrawable),我们根据画图的需求,创建相应的可画对象 2.Canvas画布,绘图的目的区域,用于绘图 3.Bitmap位图,用于图的处理 4.Matrix矩阵 二.Bitmap 1.从资源中获取Bitmap 1 Resources res = getResources();2 Bitmap bmp = Bitm…
目录: 第1章 Android应用与开发环境1.1 Android的发展和历史1.1.1 Android的发展和简介1.1.2 Android平台架构及特性1.2 搭建Android开发环境1.2.1 下载和安装Android SDK1.2.2 安装Eclipse和ADT插件1.3 Android常用开发工具的用法1.3.1 创建.删除和浏览AVD1.3.2 使用Android模拟器(Emulator)1.3.3 使用DDMS进行调试android调试输出1.3.4 Android Debug…
Android Animation学习(四) ApiDemos解析:多属性动画 如果想同时改变多个属性,根据前面所学的,比较显而易见的一种思路是构造多个对象Animator , ( Animator可以是ValueAnimator.ObjectAnimator和AnimatorSet) 然后最后把它们放在一个AnimatorSet中. 另一种思路就是,把多个属性的改变放在同一个 ValueAnimator 中(ObjectAnimator也是 ValueAnimator). 而这就要借助Prop…
Android Animation学习(三) ApiDemos解析:XML动画文件的使用 可以用XML文件来定义Animation. 文件必须有一个唯一的根节点: <set>, <objectAnimator>, or <valueAnimator>三者之一. 对应的Java类是: ValueAnimator - <animator> ObjectAnimator - <objectAnimator> AnimatorSet - <set&…
Android Animation学习(二) ApiDemos解析:基本Animatiors使用 Animator类提供了创建动画的基本结构,但是一般使用的是它的子类: ValueAnimator.ObjectAnimator.AnimatorSet ApiDemos中Animation部分是单独的一个包. 下面代码来自ApiDemos中的AnimationCloning类,加了一个使用ValueAnimator的动画,还有一些注释. 完整的项目见:URL:https://github.com/…
对于普通的view,其测量在ViewGroup中的measureChildWithMargins函数中调用child view的measure开始测量. 1:从measure函数开始 public final void measure(int widthMeasureSpec, int heightMeasureSpec) { if ((mPrivateFlags & FORCE_LAYOUT) == FORCE_LAYOUT || widthMeasureSpec != mOldWidthMe…
一.drawable  图形对象,可以转载常用格式的图像,可能是(位图)Bitmapdrawable,或者shapedrawable(图形),还可能是多种其他图片格式GIF,PNG,JEPG 二.Bitmap 就是位图,用于图片的处理 三.Canvas 意为画布,就是绘画的目标区域,用来管理Bitmp或者path路径 下面就是讲到drawable转换成Bitmap的方法 我所知有两种方法(两种方法谁好谁坏,得看情况) (1)常见的一种方法就是创建个Bitmap出来,再用画布绑定这个位图,将dra…
//By smells2 at Lab 2012-02-21#include <osg/Group>#include <osg/Geode>#include <osg/ShapeDrawable>#include <osg/Texture2D>#include <osgViewer/Viewer>#include <osgDB/readfile> #include <osg/PositionAttitudeTransform&g…