Android学习中的笔记
文章平均质量分 71
Andorid学习
换元不配限
朋友,你听说过贝克街221号吗?
展开
-
WebView组件的常用方法
使用WebView组件可以进行页面的显示,类似于Acitivity,这篇文章介绍的是关于WebView的一些基本方法:WebView的继承结构如下:java.lang.Object==>android.view.View ==>android.view.ViewGroup ==>android.widget.AbsoluteLayout ==>android.原创 2016-03-04 14:57:42 · 1250 阅读 · 0 评论 -
自定义View
下面的内容是我在观看完慕课网的一个课程后所写的关于自定义View的学习视图组件(View)android中view类是最基本的UI类,高级UI组件继承View类而实现的,这里的UI是指user interface,即用户界面。我们使用的TextView,Button,List,EditText,RadioButton等都是View类。一个View在屏幕中占据了一块矩形区域,它负责渲染这原创 2016-01-13 18:56:14 · 376 阅读 · 0 评论 -
OpenGL ES学习(8)——剪裁测试认识
介绍了OpenGL ES 2.0 中:剪裁测试、Alpha测试、横板测试和任意剪裁平面原创 2022-09-06 14:31:03 · 1090 阅读 · 0 评论 -
OpenGL ES学习(7)——混合
使用OpenGL ES 2.0X实现半透明效果原创 2022-08-31 16:18:08 · 876 阅读 · 0 评论 -
Android TV下罕见BUG记录
AndroidTv下一些BUG记录原创 2022-07-22 20:30:00 · 382 阅读 · 0 评论 -
OpenGL ES学习(6)——认识纹理
想要实现更加绚丽的真实世界,需要用到纹理。本文章介绍OpenGL ES 2.0下纹理映射原理,纹理拉伸和采样、Mipmap纹理...原创 2022-07-15 14:35:30 · 837 阅读 · 0 评论 -
OpenGL ES学习(5)——光照
在OpenGL ES 2.X中采用的光照模型(通道)分3种:环境光、散射光和镜面光。原创 2022-07-13 21:00:00 · 669 阅读 · 0 评论 -
OpenGL ES学习(4)——投影和绘制
正交投影是平行投影,视景体为长方体,投影到近平面的图形不会产生“近大远小”效果。原创 2022-07-08 22:03:12 · 836 阅读 · 0 评论 -
OpenGL ES学习(3)——着色语言入门
OpenGL ES着色语言属于高级图形编程语言,源于C语言。提供有丰富的原生数据类型,如向量、矩阵等。采原创 2022-07-07 09:43:22 · 394 阅读 · 0 评论 -
OpenGL ES学习(2)——顶点着色器和片元着色器
顶点着色器和片元着色器原创 2022-07-06 08:00:00 · 1043 阅读 · 0 评论 -
OpenGL ES 学习初识(1)
OpenGL ES是跨平台2D/3D图形API,而OpenGL ES是在前者基础上扩展的版本,适用于手机等嵌入式设备。原创 2022-07-05 18:30:00 · 429 阅读 · 0 评论 -
maven学习记录(一)
常用命令mvn archetype:create 创建Maven项目mvn compile 编译源代码mvn deploy 发布项目mvn test-compile 编译测试源代码mvn test 运行应用程序中的单元测试mvn site 生成项目相关信息的网站mvn clean 清除项目目录中的生成结果mvn package 根据项目生成的jarmvn install 在本地Repository中安装jarmvn eclipse:eclipse 生成eclipse项目文件mvn原创 2022-05-20 15:31:37 · 76 阅读 · 0 评论 -
Android DisplayMetrics介绍
0.前言Android 官方文档解释:A structure describing general information about a display, such as its size, density, and font scaling.To access the DisplayMetrics members(描述显示信息的结构,诸如屏幕大小、屏幕密度和字体缩放)获取DisplayMetrics使用下面代码 context.getResources().getDisplayMetric原创 2021-11-29 19:00:00 · 1862 阅读 · 0 评论 -
APP隐私政策
竹子天气隐私政策本软件尊重并保护所有使用服务用户的个人隐私权。为了给您提供更准确、更有个性化的服务,本软件会按照本隐私权政策的规定使用和披露您的个人信息。但本软件将以高度的勤勉、 审慎义务对待这些信息。除本隐私权政策另有规定外,在未征得您事先许可的情况下,本软件不会将这些信息对外披露或向第三方提供。本软件会不时更新本隐私权政策。您在同意本软件服务使用协议之时,即视为您已经同意本隐私权政策全部内容。本隐私权政策属于本软件服务使用协议不可分割的一部分。1.适用范围a)在您使用本软件网络服...原创 2021-11-02 18:03:44 · 190 阅读 · 0 评论 -
自定义评分控件RatingView
在京东等购物APP上最常见的一个功能就是用户评价:Android自带就有评分星级条控件RatingBar(见下图),使用很简单,但同样支持的功能也有限。在这个拼颜值的时代,自带的RatingBar控件往往不能满足项目需求,比如不支持更换其他图形,不支持星星间距大小调整等。今天就简单实现一个可以满足这些基本需求的控件。1.自定义RatingViewpublic class RatingView extends FrameLayout { public RankingView(Context con原创 2021-09-07 19:42:11 · 343 阅读 · 0 评论 -
Kotlin学习(7)-类和对象之类的继承、接口
1.普通类Kotlin如同Java一样也拥有一个超类——Any(Java是Object),Any提供了3个方法:equals()、hashCode()和toString()。Kotlin中的类默认都是不可以继承的,如果想要继承一个类则需要添加关键字"open"。open class Fruit(var area: String = "上海") { //...}//父类Fruit已经在构造函数中声明了属性,子类就不需重复声明(不需要添加val/var)class Apple(area:原创 2021-03-21 21:02:50 · 169 阅读 · 0 评论 -
Android上下文Context
Android的Context是一个经常用到的概念,由于它是一个抽象类所以更多时候我们见到或使用到的是它的子类,比如getApplicationContext(),getBaseContext(),getContext()。中文一般翻译成“上下文”,结合汉语中对上下文的解释不难理解Android环境中对Context的定义和重要性。Android应用是由一个个组件组成的(各个Activity,Service,View等),想要合理的沟通和运行这些组件就需要Context来作为“桥梁”。这篇文章就来好好总结下原创 2021-03-17 18:07:19 · 367 阅读 · 0 评论 -
Kotlin学习(6)-类和对象之类成员介绍
Kotlin的类成员包括:成员属性,成员方法,伴生对象和静态属性。1.成员属性kotlin对类成员属性声明采取了一种简洁的方式:属性字段和构造函数的入参一一对应,那么抛弃Java中那种this.属性和get/set的操作,考虑让编译器自动对属性进行命名和赋值。这样就有了下面的kotlin写法:class Person(var age:Int,val sex:Int = 0) { }如果某个字段不是入参同名属性,需要在类内部显示声明该属性字段。class Person(var age:原创 2021-03-17 09:43:35 · 181 阅读 · 0 评论 -
Kotlin学习(5)-类和对象之类的构造
1.类的简单定义Kotlin中定义类依旧使用关键字"class",类声明一般由类名、类头(指定其类型参数、主构造函数)和花括号组成(类主体)。class Person() { //初始化块 //初始化块仅仅定义了初始操作,它无法定义输入参数 init { println("--------> init() block.") }}类创建好后,就可以实例化它。具体实例化一个类如下://实例化Person对象,省略了new关键字var pers原创 2021-03-16 18:08:17 · 258 阅读 · 0 评论 -
GLSL常见语法快速了解
【注意】本文仅记录Vertex Shader和Fragmen Shader!一 GLSL简介GLSL语言(OpenGL Shading Language)是一种C风格的语言.二、数据类型2.1 基本数据类型有基本类型解释int整型float、double浮点型unit无符号整数boolbool类型,true/false2.2 矢量(Vectors)类型(表中字母n 代表可以是 2, 3或 4)类型解释bvecn布尔型矢量原创 2020-10-19 10:06:12 · 387 阅读 · 0 评论 -
AndroidStudio出现提示 “Magic number did not match...”
Magic number did not matchjava.lang.IllegalStateException: Magic number did not match at com.intellij.credentialStore.kdbx.KdbxSerializerKt.readKdbxHeader(KdbxSerializer.kt:146) at com.intellij.cr...原创 2020-05-07 17:00:56 · 1092 阅读 · 0 评论 -
Fragment实现的Tab标签
利用Fragment实现Tab主界面的方法Fragment是在Android3.0以后引入的一个,它可以优化布局层次,与viewpager相比,它不用像Viewpager一样在所有的布局都要mainactivity中进行初始化,包括后面的事件。案例:先是布局文件:<FrameLayout xmlns:android="http://schemas.android.com/ap原创 2016-03-02 21:21:05 · 523 阅读 · 0 评论 -
利用webview加载网页
WebView是一个开放的浏览器组件,基于WebKit内核开发出来的,在Android系统中,默认提供给了我们WebView组件的支持,我们可以直接使用WebView组件显示网页的内容。 下面是一个简单的Demo,使用的是loadUrl()方法,要求在()中输入URL地址(如www.baidu.com),单击浏览后即可将指定的URL加载到WebView中。首先是...原创 2016-03-04 14:38:41 · 567 阅读 · 0 评论 -
simpleAdapter类
SimpleAdapter类的继承结构为:java.lang.Object ===>android.widget.BaseAdapter ===>android.widget.SimpleAdapter该类的主要功能是将List集合的数据转换为ListView可以支持的数据,我们想要实现这种转换,就需要定义一个数据的显示模板(专门定义一个布局管理器,多数采用原创 2016-03-16 21:43:07 · 616 阅读 · 0 评论 -
List集合
List集合包括List接口以及List接口的所有实现类。List集合中的元素允许重复,各元素的顺序就是对象插入的顺序。我们可以通过使用索引来访问集合中的元素。List接口继承了Collection接口,它有两个重要的方法:1.get(int index):获得指定索引位置的元素2.set(int index,Object obj):将集合中指定索引位置的对象修改为指定的对象原创 2016-03-06 21:21:40 · 337 阅读 · 0 评论 -
DOM操作
使用文件保存数据时,往往会采用XML文件形式进行数据的保存,一旦使用了XML操作,就需要对XML文件进行解析,今天先来解释下常用的一种解析:DOM解析。 一、DOM解析是将XML文件全部载入,组装成一颗DOM树,然后通过节点以及节点之间的关系来解析XML文件。1:要读入一个XML文档,首先要有一个DocumentBuilder对象:DocumentBuilderFactory fa原创 2016-03-07 17:09:20 · 304 阅读 · 0 评论 -
Toast的不同风格
Toast在使用中主要是提示作用,一般开发中我们直接使用默认的即可。但是有时候为了达到更好的视觉效果,也需要我们更改默认的Toast效果。默认方式:Toast.makeText(getApplicationContext(), "我是默认方式哦",Toast.LENGTH_SHORT).show();自定义方式:toast = Toast.makeText(getAppli原创 2016-03-21 17:03:04 · 422 阅读 · 0 评论 -
Animation动画处理
使用Animation组件可以实现一些动画处理,可以为控件设置旋转、移动、淡入淡出等。Animation共分两类:(1)Tweened Animation(渐变动画):该类可以完成控件的旋转、移动、伸缩、淡入淡出等特效(2)Frame Animation(帧动画):可以将预先定义好的对象按照电影的形式进行播放。首先先介绍关于Tweened Animation(渐变动画)它表原创 2016-02-25 23:01:49 · 530 阅读 · 0 评论 -
Android中的5中数据存储方式之SharedPreferences存储
Android中5中数据存储:SharedPreference存储、文件存储、SQLite数据库存储、ContentProvider存储和网络存储。原创 2016-03-23 20:53:22 · 638 阅读 · 0 评论 -
android四大组件
android程序一般由4部分组成:Activity;Broadcast Intent Receiver;Service;Content Provider。1.Activity(可以简单理解为是手机的一屏),在Activity里面可以添加View,并且对View进行处理。Android应用一般是由多个Activity组成的,这些Activity间可以相互跳转,A原创 2016-02-29 12:05:32 · 428 阅读 · 0 评论 -
播放视频
MediaPlayer除了可以用来播放音频以外,还可以用来播放视频。在进行视频播放的时候,需要写一个空间进行视频的显示,该空间要可以快速更新GUI,渲染GUI,必须依靠android.view.SurfaceView组件。它封装了一个Surface对象,(不是Canvas对象),使用Surface可以完成对后台线程的控制。android.view.SurfaceView类是View的子类,常用...原创 2016-02-29 18:19:34 · 413 阅读 · 0 评论 -
Activity介绍
Activity作为Android中四大组件之一,它的重要性不言而喻。下面来介绍关于它的一些知识。1.什么是ActivityActivity是一个应用程序组件,提供用户与程序交互的界面,用于存放各个显示控件,如Button。一个Android项目是由多个Activity组成的。android.app.Activity类的继承结构如下java.lang.Object -->and原创 2016-02-29 22:31:45 · 4669 阅读 · 0 评论 -
关于AndroidStudio升级到2.0的一些问题汇总
今天因为.9图的问题,一直无法正确运行程序。抱着试试的态度,自己将原来的1.5卸载后,重新安装了2.1.1。程序最后是可以跑了,但是到今天下午为止,自己也还是遇到了一些非技术的问题,下面就将其罗列出来。(PS:这篇文章自己会不断更新,因为是第一天用2.0以上的所以。)一、Session 'app' : Error Launching activity问题问题的原因我原创 2016-06-14 17:00:15 · 884 阅读 · 0 评论 -
使用Butter Knife
关于Butter Knife这个插件我第一次见到还是在上个月公司同事写的一部分代码中,第一次见到它后,内心直呼:这尼玛是什么鬼。但新手也没在怕的,不会就马上去百度了,原来这是用在我们初始化绑定控件的时候的,我也直接称呼这玩意儿叫“黄油刀(感觉很贴切)”。单纯看字不好懂,直接上图。先是使用Butter Knife的效果:再看我们平常开发时候的初始化方法:发现不同了吧。关于这个原创 2016-06-16 10:30:39 · 601 阅读 · 0 评论 -
自定义组件
android中,所有的UI界面都是由View和ViewGroup类及其子类组合而成。View类是所有UI组件的基类,ViewGroup类是这些UI组件的容器,其本身也是View类的子类。一般情况下,开发Android应用程序的UI界面,使用的都是View类和ViewGroup类的子类,例如ImageView用来显示图片等。Android提供了很多继承了View类的UI组件,但是在实际开发中,原创 2016-02-24 19:16:53 · 582 阅读 · 0 评论 -
Android常用布局样式介绍
整理相册时候发现的这个,当初是看慕课的时候拍下的这几段话,写个总结来加深些 映象1.LinearLayout(线性布局)2.RealativeLayout(相对布局)3.TableLayout(表格布局)4.AbsoluteLayout(绝对布局)5.FrameLayout(帧布局)先介绍第一个LinearLayout(线性布局)原创 2016-12-30 16:31:36 · 813 阅读 · 0 评论 -
SQLite基本使用
1.创建数据库创建一个名为test的数据库sqlite3 test.db2.创建表CREATE TABLE mytable(_id INTEGER PRIMARY KEY;name TEXT NOT NULL;sex TEXT NOT NULL;age REAL NOT NULL;);3.查看所有命令列表.help4.列出所有原创 2017-02-04 16:35:51 · 342 阅读 · 0 评论 -
Handler消息传递机制
一、Handler简介Handler类的主要作用有两个:在新启动的线程中发送消息在主线程中获取、处理消息上面涉及到两个新问题:新线程中何时发送消息;主线程中何时去获取并处理消息。为了让主线程可以“适时”的处理新启动的线程发送的消息,通过回调的方式来实现---我们重写Handler类中处理消息的方法,新启动的线程发送消息时,消息会发送到与之关联的MessageQueue,而Han原创 2017-02-07 15:13:08 · 231 阅读 · 0 评论 -
异步处理工具类:AsyncTask
我们都知道在主线程和子线程之间的通信主要依靠Handler完成,但子线程无法直接对主线程的组件进行更新,在android1.5后提供了一个android.os.AsyncTask(非同步任务)类,我们可以通过此类完成非阻塞的操作类。该类和Handler类似,可以在后台进行操作之后更新主线程的UI,但它的使用要比Handler容易许多。android.os.AsyncTask类的继承结构原创 2016-03-16 18:12:47 · 2168 阅读 · 0 评论 -
Android中的SQLite数据库存储
SQLite数据库是一个轻量级的、嵌入式的关系型数据库,可以方便的使用SQL语句实现数据的增加、修改、删除、查询、事务控制等操作。Android系统中,要进行SQLite数据库的操作使用如下所示的类和接口:1.android.database.sqlite.SQLiteDatabase 完成数据的CRUD操作及事务处理2.android.database.sqlite.SQLit原创 2016-03-07 20:16:50 · 449 阅读 · 0 评论