Android开发中,资源文件中会有大量的图片素材文件,这样会额外增加APP的大小,有时面对对APP 大小有限制的,那就要考虑尽可能的对图片进行压缩处理或者减少资源文件中图片的数量,那么减少了资源素材文件,我们如何满足应用对图形的丰富要求呢?我们可以使用shape绘制的,有很多优点。从而满足我们的要求,下面是我整理的一些素材:

首先看最终效果:

1、主布局XML文件

android:layout_width="match_parent"

android:layout_height="match_parent"

android:orientation="vertical"

android:padding="10dp" >

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_marginBottom="20dp"

android:background="@drawable/s1"

android:padding="10dp"

android:text="@string/s1"

android:textColor="#fff"

android:textSize="16sp" />

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_marginBottom="20dp"

android:background="@drawable/s2"

android:padding="10dp"

android:text="@string/s2"

android:textColor="#ff9800"

android:textSize="16sp" />

android:layout_width="50dp"

android:layout_height="50dp"

android:layout_marginBottom="20dp"

android:background="@drawable/s3"

android:padding="10dp"

android:scaleType="fitXY"

android:src="@drawable/ic_launcher" />

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_marginBottom="20dp"

android:background="@drawable/s4"

android:padding="5dp"

android:text="@string/s4"

android:textColor="#fff"

android:textSize="16sp" />

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_marginBottom="20dp"

android:background="@drawable/s5"

android:padding="5dp"

android:text="@string/s5"

android:textColor="#00bcd4"

android:textSize="16sp" />

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_marginBottom="20dp"

android:background="@drawable/s6"

android:padding="5dp"

android:text="@string/s6"

android:textColor="#fff"

android:textSize="16sp" />

2、shape文件

1)s1.xml

2)s2.xml

3)s3.xml

4)s4.xml

5)s5.xml

6)s6.xml

3、String.xml

shape制作drawable素材

Settings

Hello world!

我是第一行

我是第二行

我是第三行

我是第四行

我是第五行

我是第六行

4、主界面Activity代码

package com.sunny.shape;

import android.os.Bundle;

import android.app.Activity;

import android.view.Menu;

import android.view.Window;

public class MainActivity extends Activity {

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

requestWindowFeature(Window.FEATURE_NO_TITLE);

setContentView(R.layout.activity_main);

}

}

以上就是使用shape制作drawable素材,代码很详细,就不贴源码了,按照以上步骤操作就��以做出最终效果,也可以做出自己想要的喜欢样式,欢迎大家一块学习交流~

android 自定义圆形图片素材,Android 使用shape制作drawable素材相关推荐

  1. Android 自定义圆形图片 CircleImageView

    1.效果预览 1.1.布局中写自定义圆形图片的路径即可 1.2.然后看一看图片效果 1.3.原图是这样的 @mipmap/ic_launcher 2.使用过程 2.1.CircleImageView源 ...

  2. Android 自定义圆形图片

    代码注释很多,简单说下思路,然后直接贴代码 1.截取选定图片中间区域(宽等于高的正方形) 2.按照控件大小进行缩放 3.画圆,设置paint.setXfermode(new PorterDuffXfe ...

  3. android 自定义圆形裁剪框,android 头像裁剪控件

    #头像裁剪控件 支持圆形和方形预览,调用简单 控件参数说明 backgroundBoxColor1背景方格颜色1,两种颜色组成方背景效果,两个背景色使用相同颜色,成纯色背景交 backgroundBo ...

  4. Android实现圆形图片

    一.概述 圆形图片现在越来越多应用于Android应用中, 但是用的最多的地方当属于, 头像的显示. 比如QQ, 新浪微博,微信中很多地方都是用了圆形头像,所以有必要深究一下. 二.圆形图片的实现方式 ...

  5. android自定义控件圆形图片

     属性: <com.example.mywechat11.MyCircleImageViewandroid:id="@+id/friend_head"android:layo ...

  6. Android自定义圆形进度条

    Android自定义圆形进度条 github地址:https://github.com/opq1289/CircleProgressView 效果图: 无动画: 有动画: 整圆: 切割圆: 具体步骤: ...

  7. android自定义曲线控件,Android自定义view进阶-- 神奇的贝塞尔曲线

    上一篇介绍了自定义view需要知道的基本函数.新开一篇献给借给我vpn的深圳_奋斗小哥. 转载请注明出处:http://blog.csdn.net/wingichoy/article/details/ ...

  8. 鸿蒙os事例代码,鸿蒙HarmonyOS App开发造轮子之自定义圆形图片组件的实例代码

    一.背景 在采用Java配合xml布局编写鸿蒙app页面的时候,发现sdk自带的Image组件并不能将图片设置成圆形,反复了翻阅了官方API手册(主要查阅了Compont和Image相关的API),起 ...

  9. Kotlin实战练习——自定义圆形图片三种实现方式

    Kotlin实战练习--自定义圆形图片三种实现方式 前言 如今Kotlin越来越重要,本人也开始了Kotlin的学习.为了检测学习效果,加深学习印象,同时回顾一下以前的一些知识点,决定从写一个自定义圆 ...

最新文章

  1. Selenium-switch_to_window出现删除线
  2. Html中元素的分类
  3. 从 “香农熵” 到 “告警降噪” ,如何提升告警精度?
  4. TNN MatConvertParam参数scale和bias设置
  5. vue加百度统计代码(亲测有效)
  6. AmazeUI基本样式
  7. python 学习笔记二 搭建ftp服务器
  8. Linux技术学习路线图
  9. 条件复杂的sql语句查询
  10. 如何以CustomValidator搭配jQuery AJAX进行Server端验证(转)
  11. java 微信图片上传_后台Java代码加前端微信小程序实现图片上传案例(学习)
  12. JSON Viewer有个大bug导致不得不放弃掉
  13. 东芝计算机配置,东芝z830配置 东芝Z830-K02S参数【图文】
  14. 小程序如何跳转至同服务器app,微信小程序如何跳转到APP?
  15. windows服务器443端口被占用---云锁
  16. 算法导论-----最长公共子序列LCS(动态规划)
  17. java垃圾回收代码
  18. 19-Linux计划任务
  19. 全球及中国胶粘剂和密封胶基材行业产销现状与运营前景预测报告2022版
  20. 《ABAQUS有限元分析实例详解》学习笔记_51CAE_新浪博客

热门文章

  1. flutter 卡顿_Flutter WebView 卡顿问题
  2. java通过ftp方式上传_通过FTP以Java方式上传文件
  3. python程序报错_Python编程报错总汇
  4. mySql中Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggre的问题
  5. cuda 安装_win10+VS 2017 安装 CUDA(Visual Studio Integration失败)
  6. 鸿蒙系统哪里的,华为“鸿蒙系统”IPFS/FIL:区块链的“鸿蒙系统”?
  7. mysql监控nginx_mysql和nginx服务是否正常监控脚本
  8. 导入json数据到Elasticsearch(bulk方法)
  9. 【Network Security!】搭建文件分享服务器,其实也可以很简单-HFS
  10. UVa 10375 Choose and divide