IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> Android之基础复习2D图形一,kotlin版权 -> 正文阅读

[移动开发]Android之基础复习2D图形一,kotlin版权

int width;

int height;

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

// 设置全屏,也可以在xml中进行设置 。

requestWindowFeature(Window.FEATURE_NO_TITLE);

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,

WindowManager.LayoutParams.FLAG_FULLSCREEN);

setContentView(R.layout.main);

img = (ImageView) findViewById(R.id.img);

// 得到屏幕的宽和高。

Display display = getWindowManager().getDefaultDisplay();

width = display.getWidth();

height = display.getHeight();

// 创建图片,用来绘制。

bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);

// 创建画布,并且设置图片用来进行绘制。一个画布可以看成是整个屏幕。

canvas = new Canvas();

canvas.setBitmap(bitmap);

// 设置画笔,的各种属性。

//可以利用typeface设置外部字体

paint = new Paint();

paint.setAntiAlias(true);

paint.setColor(Color.RED);

paint.setStrokeWidth(10);

paint.setStyle(Paint.Style.FILL);

// 利用画布直接将内容绘制到bitmap上面。

canvas.drawCircle(50, 50, 30, paint);

//设定字体和各种格式

Typeface typeface = Typeface.create(“test”, Typeface.BOLD_ITALIC);

paint.setTypeface(typeface);

paint.setTextSize(25);

canvas.drawText(“我是被画出来的!”, 100, 50, paint);

//画线

paint.setColor(Color.GREEN);

canvas.drawLine(0, 0, width, height/2, paint);

//画一条路径;Path.moveTo

Path path = new Path();

paint.setColor(Color.BLUE);

//移动动位置

path.moveTo(150, 150);

//画线条

path.lineTo(150, 200);

path.lineTo(200, 210);

path.lineTo(30, 30);

canvas.drawPath(path, paint);

//从哪里开始画一个弧形

path.reset();

path.addCircle(230, 230, 10, Direction.CCW);

canvas.drawPath(path, paint);

// 将画好的图片显示到屏幕上面。

img.setImageBitmap(bitmap);

// 清空笔刷;

paint.reset();

}

}

下面看看一下转换方法:

1)Bitmap 转化为 byte

ByteArrayOutputStream out = new ByteArrayOutputStream();

bitmap.compress(Bitmap.CompressFormat

《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》

【docs.qq.com/doc/DSkNLaERkbnFoS0ZF】 完整内容开源分享

.PNG, 100, out);

byte[] array= out.toByteArray();

2)byte转化为bitmap

final ContentResolver contentResolver = context.getContentResolver();

final PackageManager manager = context.getPackageManager();

final Cursor c = contentResolver.query(uri, null, null, null, null);

final int icon3DIndex = c.getColumnIndexOrThrow(ColumnName);

byte[] data = c.getBlob(icon3DIndex);

Bitmap bitmap = BitmapFactory.decodeByteArray(data, 0, data.length);

3)bitmap 转换 drawable

Bitmap bitmap = new Bitmap(…); Drawable drawable = new BitmapDrawable(bitmap);

//Drawable drawable = new FastBitmapDrawable(bitmap);

4)Drawable to Bitmap

  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2021-12-26 22:18:57  更:2021-12-26 22:21:22 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 9:20:12-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码