Android
luckyliuqs
久处不厌 心生欢喜
展开
-
mymusic开发问题汇总
1.个人主页CoordinatorLayout+TableLayout+ViewPager,滑动ViewPager的Fragment页面,整个个人主页不能自动折叠的问题原因 通过CoordinatorLayout+AppBarLayout+CollapsingToolbarLayout框架实现滑动折叠功能,ViewPager包含两个Fragment横向滑动,集成后发现无论怎么样...原创 2019-06-26 22:27:31 · 207 阅读 · 0 评论 -
Android开发-ExpandableListView控件
目录1.ExpandableListView概述1.1 定义1.2 与ListView的区别1.3 应用场景2.常用属性2.1 groupIndicator2.2 childIndicator2.3 childDivider3.常用的方法3.1 setAdapter(ExpandableListAdapter adapter)3.2 setOnGroup...原创 2019-03-22 21:55:42 · 1588 阅读 · 0 评论 -
Android开发-GridView
1.GridView1.1 GridView效果图1.2 GridView概念 GridView(网格视图)是按照行列的方式来显示内容的,主要是凸显那种网格式布局,既有横向也有纵向的数据显示。一般用于显示图片,图片等内容,比如实现九宫格图,用GridView是首选,也是最简单的。1.3 GridView的使用场景 GridView是...原创 2019-03-08 12:28:13 · 7319 阅读 · 0 评论 -
Android开发-SQLite数据库
1.简介1.1 概念 SQLite适合储存大量数据,并对数据进行管理和维护。是一个轻量级,零配置的,可嵌入的程序驱动型的二进制文件(故占用空间少),同时也是一种实现自包容,支持事务的关系型数据库。 SQLite没有服务器进程,它通过文件保存数据,该文件是跨平台的,可以放在其他平台中使用。 遵守ACID的关系型数据库管理系统。ACID指数据库事务正...原创 2019-03-11 19:48:27 · 518 阅读 · 0 评论 -
Android开发-动态权限申请
目录1.概述1.1 Android 6.0之前版本权限1.2 Android 6.0及更高版本权限2.权限分类2.1 正常权限2.2 危险权限3.权限组3.1 权限组概念3.2 权限组和危险权限列表3.3 权限组和权限的表示4.在运行时请求权限4.1 原理4.2 检查权限4.3 解释权限4.4 请求权限4.5 处理结果1.概述...原创 2019-03-09 21:18:46 · 1432 阅读 · 0 评论 -
创建型模式-抽象工厂方法模式
目录1.抽象工厂方法模式概述1.1概念1.2产品等级结构和产品族1.2类图1.3角色 2.抽象工厂方法模式实现原理3.抽象工厂方法模式优缺点3.1优点3.2缺点1.抽象工厂方法模式概述1.1概念 抽象工厂方法模式是所有形态的工厂模式中最为抽象和最具一般性的一种形态。抽象工厂方法模式提供了一个创建一系列相关或相互依赖对象的接...原创 2019-03-06 23:45:56 · 244 阅读 · 0 评论 -
Android开发-SharedPreferences
目录1.SharedPreferences1.1 概念1.2 操作模式1.2储存数据1.3获取数据1.4 储存数据的xml文件格式1.SharedPreferences1.1 概念1.sharedPreferences是Android平台上一个轻量级的储存类,本质是一个xml文件,通过类似key/value键值对的形式存放信息。 2.主要用于储存一些应...原创 2019-03-09 16:10:59 · 503 阅读 · 0 评论 -
Android开发-ListView
目录1.ListView概述1.1 ListView概念1.2ListView实现效果图1.3 ListView的属性2.ListView的适配器2.1适配器作用2.2适配器种类2.2.1BaseAdapter2.2.2SimpleAdapter2.2.3ArrayAdapter3.ListView案例实现3.1在layout布局文件中创建Lis...原创 2019-03-06 21:10:04 · 2954 阅读 · 0 评论 -
Android开发-获取系统应用信息
1. 获取系统已安装的应用信息 代码如下:Intent intent = new Intent(Intent.ACTION_MAIN,null);intent.addCategory(Intent.CATEGORY_LAUNCHER);List<ResolveInfo> appInfos = getPackageManager().queryInten...原创 2019-03-06 20:48:13 · 457 阅读 · 0 评论 -
Android开发-多线程
目录1.概述1.1 定义1.2 创建1.2.1 方式一1.2.2 方式二1.2 在子线程中更新UI2.案例2.1 说明2.2 创建布局2.3 使用异步消息处理机制解决子线程更新UI2.4 分析 由于Handler是在主线程中创建的,因此handleMessage()方法里面的代码也会在主线程中运行。3.同步与异步3.1同...原创 2019-04-12 16:21:17 · 422 阅读 · 0 评论 -
Android开发-LayoutInflater类
1.概述1.1 定义 加载布局的任务通常都是在Activity中调用setContentView()方法来完成的,其实setContentView()方法内部也是是由LayoutInflater来加载布局的。 LayoutInflater是一个抽象类,继承自Object,位于android.view包下,作用类似于findViewById(),但是...原创 2019-04-12 17:17:57 · 320 阅读 · 0 评论 -
Android开发错误汇总
目录1.Can't toast on a thread that has not called Looper.prepare()2.android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its vie...原创 2019-04-22 15:37:00 · 796 阅读 · 0 评论 -
Android通知栏-Notification(通知消息)
1.概述 当应用程序在后台运行,希望向用户发出一些提示学习,就需要借助Notification(通知)来实现。在发出一条通知后,手机最上方的状态栏会显示一个通知的图标,下拉状态栏后就可以看到通知的详细内容。1.1 视图分类Notification有两种视觉风格,一种是标准视图(Normal View),另外一种是大视图(Big view)。标准视图在Android中各...原创 2019-05-29 22:29:08 · 44847 阅读 · 3 评论 -
Android动画-Interpolator(插值器)
1.概述1.1 定义 Interpolator负责控制动画变化的速率,使得基本的动画效果能够以匀速、加速、减速、抛物线速率等各种速率变化。1.2 应用场景 可以实现非线性运动:动画改变的速率不是一成不变的,如加速 & 减速运动都属于非线性运动1.3 插值器类型 Android内置了9种内置的插值器实现,如...原创 2019-05-10 16:00:45 · 1051 阅读 · 0 评论 -
Android开发-JSON
1.概述1.1 定义 JSON是一种轻量级数据交换格式,全称为Javascript Object Notation,采用完全独立于编程语言的文本格式来储存和表示数据。采用键值对key-value形式。1.2 数据结构数据结构 Obeject:对象形式 使用{}包含的键值对结构, key必须为String类型 value...原创 2019-03-22 11:14:24 · 163 阅读 · 0 评论 -
Android动画-概述及分类
1.概述1.1 定义 1.2 分类 Android动画有如下三种:1.视图动画(View动画),也叫补间动画和Tween动画 主要通过指定View位置、角度、尺寸、透明度、变化时间和方式等属性的变化,进行图形变化,从而达到动画效果。其主要效果有如下: Translate(平移) Scale(缩放动画) Rotat...原创 2019-05-10 01:22:55 · 316 阅读 · 0 评论 -
Android开发-图形图像处理
1.概述 绘制图像常用的如下所示:Bitmap 代表位图 BitmapFactory 代表位图工厂,是一个工具类 Paint 代表画笔 Canvas 代表画布 Matrix 用于为图片添加特效 2.Bitmap2.1 概述 BItmap是Android系统中重要的图像处理类,提供了一系列方法,...原创 2019-05-06 10:34:06 · 771 阅读 · 0 评论 -
Android开发-Http及HttpURLConnection
1.概述 在过去,Android上发送Http请求一般有两种方式:HttpURLConnection和HttpClient。不过由于HttpClient存在API数量过多,扩展困难等缺点,在Android6.0系统中,HttpClient就被完全移除了,标志着正式弃用。如下,将学习HttpURLConnection2.HttpURLConnection2.1 概...原创 2019-04-30 21:30:45 · 613 阅读 · 0 评论 -
Android开发-文件储存
1.文件储存 该储存方式是比较常用的方法,分为内部存储和外部存储。在Android中读取/写入文件的方法,与java中实现I/O程序是一样的,通过I/O流的形式把数据直接存储到文档中。Android提供了openFileInput()方法与openFileOutput()方法来读取设备上的文件。可以存储大数据,如文本、图片、音频等。2内部存储(Interna...原创 2019-04-18 21:32:11 · 1307 阅读 · 0 评论 -
Android开发-手机适配之dimen
1.dimen概念 dimen是用来定义尺寸的资源文件,默认路径:工程的res\values\dimens.xml,如下图所示: 做好dimens适配后的项目结构如下图所示:2.dimen定义的尺寸资源作用 可以在res下创建不同分辨率的values目录,例如values-480 x 320,values-80...原创 2019-03-08 17:38:51 · 9384 阅读 · 0 评论 -
Android开发-手机适配之values目录
1.Values目录 values目录是用来存放colors.xml,dimens.xml,strings.xml等数值文件,同时可以根据屏幕分辨率、语言、API等设置对values目录进行分类,特定的values目录能够满足特定的设备进行加载。2.根据不同设备分辨率的不同进行分类values-ldpi 240 x 320(px) values...翻译 2019-03-08 17:02:01 · 2503 阅读 · 0 评论 -
Android开发-监听器
一共有四种监听方式:1.创建内部类 创建内部类,implements View.OnClickListener,并重写其onClick(View view)方法。public class SendBroadcastActivity extends AppCompatActivity { @Override protected voi...原创 2019-03-22 11:16:16 · 335 阅读 · 0 评论 -
Android开发-BroadcastReceiver(广播接收者)
1. 概述1.1 定义 在Android中,广播是一种可以跨进程的通信方式,运用在应用程序之间传递消息的机制,允许应用接收来自各处的广播消息,比如电话,短信等。同样,可以向外发出广播消息,例如电池电量低时会发送一条提示广播。要过滤并接收广播中的消息就需要使用BroadcastReceiver(广播接收者,Android四大组件之一)。 通过广播接收者可以...原创 2019-03-22 11:10:27 · 4329 阅读 · 1 评论 -
Android开发 - ContentProvider(内容提供者)
目录1.概述1.1 引入1.2 简介1.3 工作原理1.6 用法1.7 分类2.URI2.1 概念2.2 类别2.3 通配符2.4 使用UriMatcher匹配内容URI2.5 解析3.创建ContentResolver3.1 简介3.2 获取实例3.3 方法3.4 query()方法3.5 insert()方法3.6 ...原创 2019-03-22 11:10:16 · 1680 阅读 · 0 评论 -
Android开发-数据存储
1.数据储存1.1 储存方式种类 Android的储存有以下5种数据储存方式:文件储存、SharedPreferences、SQLite数据库、ContentProvider及网络储存。1.2 数据解析 对数据解析的方式有两种:XML解析,JSON解析。 2.文件储存 该储存方式是比较常...原创 2019-03-22 11:09:43 · 816 阅读 · 0 评论 -
Android开发-程序调试
目录1. 程序调试概念2. 单元测试 3. LogCat的使用(写日志)4. Debug的使用(断点)1. 程序调试概念 测试Android程序有多重方式,例如单元测试、LogCat(日志控制台)和Debug断点调试等。2. 单元测试 单元测试是指在应用程序开发过程中对最小功能模块进行测试,可以在完成某个功能之后...原创 2019-03-22 11:10:03 · 840 阅读 · 0 评论 -
Android开发-UI开发
目录Android UI开发1.布局的创建2.布局类型3.常用控件4.布局操作5 样式和主题6 国际化Android UI开发 UI(User Interface)界面即应用程序的界面。1.布局的创建 在Android程序中界面是通过布局文件设定的,在每个应用程序创建的时候都会默认包含一个主界面布局,该布局位于res/...原创 2019-03-22 11:09:53 · 3167 阅读 · 0 评论 -
Android开发-Activity(活动)
目录1. Activity概念2. Activity的创建3. Activity的生命周期3.1 生命周期状态3.2 生命周期方法3.3 横竖屏切换时的生命周期4. Activity的启动模式4.1 Android中的任务栈4.2 Activity的4中启动模式5. Activity的销毁6. Activity之间的跳转6.1 Int...原创 2019-03-04 01:55:37 · 5444 阅读 · 0 评论 -
Android开发-Service(服务)
目录Android四大组件: 1. 服务的概念 1.1 概念1.2 适用场景1.3 继承结构图2. 服务的生命周期2.1 定义 Service拥有自己的生命周期,不会被捆绑,即便Activity销毁之后,Service也不会销毁。2.2 启动类型2.3 结构图2.4 方法3. 服务的创建3.1 创建类并继承Service ...原创 2019-03-22 11:14:01 · 16004 阅读 · 0 评论 -
Android开发-AsyncTask异步下载
目录1.同步与异步1.同步2.异步2. AsyncTask2.1 AsyncTask定义2.2 AsyncTask目的2.3 AsyncTask执行步骤方法 2.4 注意事项1.同步与异步1.同步2.异步 顾名思义,异步就是UI主线程运行的时候,异步的完成一些操作。执行一个异步的任务在后台。我们可以将耗时的操作放在异步...原创 2019-03-06 00:12:02 · 751 阅读 · 0 评论 -
Android开发-Handler
目录1. Handler定义1.1 主线程(UI线程)1.2 子线程1.3 Handler由来1.4 Handler的特点1.5Handler中分发消息的方法2. Handler实现及原理 2.1 Handler实现文件异步下载并更新进度条2.2 Handler异步缺陷:内存泄露及优化方法2.3 Handler静态优化:倒计时的实现3. Hand...原创 2019-03-22 11:09:31 · 405 阅读 · 0 评论 -
Android开发-Menu菜单
1.Menu概述3.0以前 3.0以前的Menu,当用户点击菜单按钮时,选项菜单的内容会出现在屏幕底部,可包含多达6个菜单项,超出部分以更多来显示。3.0以后 选项菜单中的项目将出现在操作栏里面,用户可以使用操作栏右侧的图标或者按设备的菜单键显示操作溢出菜单。2.Menu创建方式2.1XML方式定义Menu 清晰的菜单结构,将菜...原创 2019-02-26 17:06:39 · 2321 阅读 · 0 评论 -
Android开发-网络操作
目录1.Android网络使用场景2.什么是Http协议3.什么是Https协议4.Android的网络权限5.检查网络连接6.从服务器获取数据7.GET请求8.POST请求9.GET与POST的区别10.JSON解析10.1 原生方式解析JSON1.Android网络使用场景 App发送请求到服务端,服务端返回给APP端的是js...翻译 2019-03-01 20:33:37 · 692 阅读 · 0 评论 -
Android开发-View概述
目录1.概述1.1 View 定义1.2View及子类2.自定义View2.1 步骤2.1.1 自定义属性的声明与获取2.1.2 测量onMessure2.1.3绘制onDraw2.1.4 状态的储存与恢复1.概述1.1 View 定义 屏幕方块内所显示的内容,都可以成为View或View的子类1.2View及子类 ...原创 2019-04-24 23:02:32 · 991 阅读 · 0 评论 -
Android开发-闪屏页实现
1.效果图 2.闪屏页逻辑及布局2.1 activity_splash.xml<?xml version="1.0" encoding="utf-8"?><FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="htt...原创 2019-03-22 11:11:26 · 4764 阅读 · 3 评论 -
Android开发-Fragment(碎片)
目录知识点1.Fragment概述1.1 定义1.2 Fragment设计思想2.Fragment与Activity区别3.Fragment生命周期3.1 Activity与Fragment生命周期的比较3.2 Fragment的四种状态3.3 实例创建4.Fragment的创建4.1 创建方式方法4.2 Fragment的静态加载4.3动态...原创 2019-02-28 21:50:19 · 437 阅读 · 0 评论 -
Android开发-Dialog对话框
1.分类1.1 定义 对话框一种消息提示机制,通用的方法有:setTitle,setMessage,create,show 注意:其中对话框的下标是从0开始的。1.2 分类AlertDialog 普通对话框 列表对话框 单选对话框 多选对话框 输入对话框 ProgressDialog...原创 2019-02-27 17:40:46 · 1114 阅读 · 1 评论 -
Android开发-基础入门
目录1.Android历程2.Android的SDK和NDK2.1SDK2.2NDK3.Android的应用领域4.Android的架构4.1应用程序层(Applications)4.2应用程序框架层(Application Framework)4.3核心类库,即系统运行库层(Libraries)4.4Linux内核层(Linux Kernel)5.An...原创 2019-03-02 01:23:10 · 814 阅读 · 2 评论