1. 计算机表示图形的几种方式

a)         Bmp:以高质量保存,用于计算机

b)         Jpg:以良好的质量保存,用于计算机或网络

c)         Png:以高质量保存

d)         图片大小的计算公式:
图片大小=图片总像素*每个像素大小

e)        
单色:每个像素指标是两种颜色(黑或白),那么只需要使用长度为1的二进制位来表示,那么一个像素占1/8个byte

f)         
16色:每个像素最多表示16种颜色,0000 - 1111,那么需要使用长度为4的二进制来表示,那么一个像素占1/2byte

g)        
256色:每个像素最多表示256种颜色,00000000
– 11111111,那么只需要长度为8的二进制位来表示,一个像素占1个byte

24位:每个像素最多表示1600万多种颜色,一个像素占3个byte
r:占1个byte
g:占1个byte
b:占1个byte

h)        
Android采用png格式,Android中采用ARGB,一个像素占4个byte

  1. 缩放加载,加载大图片 oom

a)        
获取图片的分辨率

b)        
获取手机的分辨率

c)        
计算缩放比

d)        
按照大的比值去缩放

  1. 创建原图的副本

//创建原图副本,创建了一张空白的纸
Bitmap copyBitmap = Bitmap.createBitmap(srcBitmap.getWidth(), srcBitmap.getHeight(), srcBitmap.getConfig());
//需要画笔,将原图内容画上
Paint paint = new Paint();
//需要画布,把白纸铺到画布上
Canvas canvas = new Canvas(copyBitmap);
//开始作画drawBitmap(参考原图,矩阵,画笔)
canvas.drawBitmap(srcBitmap, new Matrix(), paint);

  1. 使用mediaplayer播放音频文件

a)        
MediaPlayer用于播放音频或视频

  1. MediaPlayer的生命周期

a)        
同步和异步

b)        
同步:一般播放本地音乐

c)        
异步:播放网络音乐,不用开子线程

  1. Surfaceview介绍

a)        
播放视频

b)        
MediaPlayer只能播放mp4和3gp格式

    1. VideoView控件介绍

Android学习第十天的更多相关文章

  1. 十一、Android学习第十天——项目开始(转)

    (转自:http://wenku.baidu.com/view/af39b3164431b90d6c85c72f.html) 十一.Android学习第十天——项目开始 Android知识点的学习告一 ...

  2. android 学习随笔十九(对话框、样式、主题、国际化 )

    1.对话框 package com.itheima.dialog; import android.os.Bundle; import android.app.Activity; import andr ...

  3. android 学习随笔十八(广播与服务 )

    1.广播接收者注册 清单文件注册(Android四大组件都要在清单文件中注册) 一旦应用部署,广播接收者就生效了,直到用户手动停止应用或者应用被删除 广播接收者可以使用代码注册 需要广播接收者运行时, ...

  4. android 学习随笔十六(广播 )

    1.广播接收者 BroadcastReceiver 接收系统发出的广播 现实中的广播:电台为了传达一些消息,而发送的广播,通过广播携带要传达的消息,群众只要买一个收音机,就可以收到广播了  Andro ...

  5. android 学习随笔十五(Activity的生命周期与摧毁时返回数据 )

    1.Activity的生命周期 onCreate:创建时调用 onStart:在屏幕上可见,但是还没有获得焦点 onResume:可见并且获得焦点 onPause:可见,但是失去焦点 onStop:不 ...

  6. android 学习随笔十四(页面跳转与数据传递)

    1.activity 创建第二个Activity 需要在清单文件中为其配置一个activity标签 标签中如果带有这个子节点,则会在系统中多创建一个快捷图标 <intent-filter> ...

  7. android 学习随笔十二(网络:使用异步HttpClient框架)

    使用异步HttpClient框架发送get.post请求 在https://github.com/ 搜索 asyn-http https://github.com/search?utf8=✓& ...

  8. android 学习随笔十(网络:get、post提交数据)

    1.get public class Tools { public static String getTextFromStream(InputStream is){ byte[] b = new by ...

  9. android学习笔记十——TabHost

    TabHost——标签页 ==> TabHost,可以在窗口放置多个标签页,每个标签页相当于获得了一个与外部容器相同大小的组件摆放区域. 通过此种方式可以实现在一个容器放置更多组件(EG:通话记 ...

随机推荐

  1. 总结:当静态路由和BGP同时存在时路由优选BGP的两种方法

    结论: 方法一.配置BGP协议的外部优先级比静态路由的优先级高,优选BGP. 优点:配置简单. 缺点:全局生效,如果用户有针对某个静态路由想提高优先级,不受动态路由影响,则针对每个静态路由都需要人为提 ...

  2. Android项目实战(一): SpannableString与SpannableStringBuilder(转)

    前言: 曾经在一些APP中的一些类似“帮助”“关于”的界面看过一行文字显示不同的颜色的效果,如下效果: 本软件是一款高.大.上的社区类软件. 一般来说,这应该是由一个TextView来显示的,但是自己 ...

  3. sql左外连接和右外连接的区别例子转摘

    sql左外连接和右外连接的区别   两个表:A(id,name)数据:(1,张三)(2,李四)(3,王五)B(id,name)数据:(1,学生)(2,老师)(4,校长) 左连接结果:select A. ...

  4. js动态创建元素之一--document.write

    以我曾经写过的例子举例 如上图,乡镇街道的名字和数目是根据数据库的数据获取的,有几个乡镇,就会显示出来几个,这就要求动态获取乡镇名称和数目,以下代码中用到了document.write创建动态页面,在 ...

  5. WebRtc编译好的vs2015源码

    一直想看webrtc的源码,苦于FQ能力有限且整个编译过程耗时巨大,故求助于互联网.在互联网寻找许久编译好的Webrtc源码,好多版本下载下来总是报各种错误,很是失落. 皇天不负有心人,终于寻得一版可 ...

  6. Github: 从github上拉取别人的源码,并推送到自己的github仓库

    比如说,将 https://github.com/lizhenliang/tomcat-java-demo 迁移到 https://github.com/lousia001/tomcat-java-d ...

  7. 英语口语练习系列-C06-购物

    <水调歌头>·苏轼 明月几时有,把酒问青天. 不知天上宫阙,今夕是何年? 我欲乘风归去,又恐琼楼玉宇, 高处不胜寒. 起舞弄清影,何似在人间! 转朱阁,低绮户,照无眠. 不应有恨,何事长向 ...

  8. Python操作db2

    官方文档:https://www.ibm.com/support/knowledgecenter/en/SSEPGG_9.5.0/com.ibm.db2.luw.apdv.python.doc/doc ...

  9. duilib

    https://www.cnblogs.com/lin1270/p/4109305.html

  10. app原生和H5混合使用自动化

    1.从原生切换到H5需要 driver.switch_to.context('WEBVIEW_com.tencent.mm:tools') 2.参考连接: https://testerhome.com ...