2-android进阶
文章平均质量分 96
mrdonkey3
不要畏惧新鲜的事物,重视学习的过程,绝不能想着一劳永逸啊。
展开
-
Android进阶:网络与数据存储—步骤1:Android网络与通信(第3小节:AsyncTask)
AsyncTask(异步任务)同步任务:我现在吃饭——>吃完饭刷碗——>刷完碗去看电视一步一步的在同步进行进行异步任务:我一边看电视、一边吃饭(互不干扰)(多个任务同时进行——多线程)内容概括:1、多线程相关2、AsyncTask详解 实践 应用二、异步任务简介2-1多线程那些事1、何为线程、多线程?一个线程,相当于一个车间的一条流...原创 2018-10-01 22:21:22 · 419 阅读 · 0 评论 -
ExpandableListView的使用2:ExpandableListView+SQLite+Json解析+网络下载
上一篇文章讲述了ExpandableListView的基本使用https://blog.csdn.net/qq_17846019/article/details/83276920案例2之下的复杂案例的实现:基于网络,SQLite、json数据的ExpandableListView的实现先了解几个概念Biz:(业务逻辑层)biz是Business的缩写,实际上就是控制...原创 2018-10-23 19:04:49 · 448 阅读 · 0 评论 -
Android进阶:步骤2:ContentProvider初体验
ContentProvider1.ContentProvider简介Android四大组件之一,为存储和获取数据提供统一的接口。可以在不同的应用程序之间共享数据。ContentProviders 管理访问结构化的数据集。它们可以封装这些数据,并且为定义安全的数据提供机制。Contentproviders 是标准的接口,它能将一个线程中的数据 与其他线程中的运行的代码进行连接...原创 2018-10-24 08:29:45 · 502 阅读 · 0 评论 -
android EditText setOnEditorActionListener的使用(回车不换行)
点击浏览器网址栏的时候,输入法软键盘右下角会变成“GO”或“前往”而我们点击Google搜索框,输入法软键盘右下角会变成 放大镜 或者“搜索”而决定这个图标的变换的参数就是EditText中的 android:imeOptionsandroid:imeOptions的值有actionGo、 actionSend 、actionSearch、actionDone等,这些意思都很明显...原创 2018-10-29 10:32:02 · 1421 阅读 · 0 评论 -
Content Provider 解析URI的方法 UriMatcher的用法和自带的解析方法
原文:https://blog.csdn.net/herbert5069/article/details/7212675 Android系统提供了两个用于操作Uri的工具类,分别为UriMatcher和ContentUris.UriMatcher 类的概要描述这是一个在 content provider 中帮助匹配 URIs 的实用类。ContentProvider是Android四...转载 2018-10-24 08:32:22 · 3293 阅读 · 0 评论 -
原 Android进阶:步骤三:Android常用框架:OkHttp网络操作框架
Okio & OkHttp课程目标 掌握I/O操作的方法 掌握传输数据的方法学习内容Okio简介 Okio的核心类 OkHttp简介 OkHttp核心类 代码实践一、Okio简介什么叫IO?比如说你的硬盘上有一个文件in.txt你想把它拷贝到另一个文件里去然后你要写一段程序,运行这段程序计算机把这段程序加载带内存当中...原创 2018-10-26 21:49:33 · 516 阅读 · 2 评论 -
线程池
一、线程池简介线程池线程池是一种多线程处理形式,处理过程中将任务添加到队列,然后在创建线程后 自动启动这些任务。线程池线程都是后台线程。每个线程都使用默认的堆栈大小,以默 认的优先级运行,并处于多线程单元中。如果某个线程在托管代码中空闲(如正在等待 某个事件),则线程池将插入另一个辅助线程来使所有处理器保持繁忙。如果所有线程 池线程都始终保持繁忙,但队列中包含挂起的工作,则线程池将在一段时...原创 2018-10-26 20:26:40 · 128 阅读 · 0 评论 -
利用ContentProvider读取系统应用的信息(短信和联系人)
上面两篇我们讲了ContentProvider如何使用Android进阶:步骤2:ContentProvider初体验https://blog.csdn.net/qq_17846019/article/details/83313922Content Provider 解析URI的方法 UriMatcher的用法和自带的解析方法https://blog.csdn.net/qq_178...原创 2018-10-24 12:54:35 · 2417 阅读 · 1 评论 -
Spinner 下拉框的基本使用
一、 Spinner 是什么?Spinner 下拉框的基本使用在 Android 开发中通常使用 Spinner 控件来实现下拉框的效果。Spinner 提供了从一个数据 集合中快速选择一项值的办法。默认情况下 Spinner 显示的是当前选择的值,点击 Spinner 会弹 出一个包含所有可选值的 dropdown 菜单,从该菜单中可以为 Spinner 选择一个新值。二、 Spin...原创 2018-10-24 14:48:24 · 763 阅读 · 0 评论 -
ContentProvider+ExpandableListView的结合
任务描述1. 安装已提供的含ContentProvider的菜单app(menudemo.apk)2. 在自己的程序中访问ContentProvider(authorities是com.imooc.menuprovider,获取菜单数据,模拟手风琴效果进行布局(如图)3.长按子项,弹出提示框 询问是否确定删除,选择【是】则删除,菜品能及时更新,否则不操作点击新增,则进入新增页面,在次页...原创 2018-10-24 23:14:40 · 269 阅读 · 7 评论 -
Android ListView批量选择(全选、反选、全不选)
转载:https://blog.csdn.net/zuiwuyuan/article/details/50042841?utm_source=blogxgwz0 APP的开发中,会常遇到这样的需求:批量取消(删除)List中的数据。这就要求ListVIew支持批量选择、全选、单选等等功能,做一个比较强大的ListView批量选择功能是很有必要的,那如何做呢? 可想而知,要支持...转载 2018-10-27 22:32:55 · 3280 阅读 · 0 评论 -
Android进阶:步骤四:Android 接入百度地图API 基础实现
内容概括:注册申请百度地图开发平台账号 这里是地址 如何申请百度地图的账号也有官方文档:在这里 申请秘钥(AK)、快速获取发布版SHA1和测试版SHA1和包名 (文档里面也有如果创建应用以及申请的教程,但在Android Studio中实现更加简单) 百度地图的Android Studio的配置 app上实现百度地图的基础功能 app实现切换百度地图的类型(基本和卫星地图) 实现...原创 2018-11-13 18:44:15 · 4460 阅读 · 3 评论 -
原 Android进阶:步骤三:Android常用框架:Picasso图片框架
转载:作者:依然范特稀西链接:https://www.jianshu.com/p/c68a3b9ca07aAndroid 中有几个比较有名的图片加载框架,Universal ImageLoader、Picasso、Glide和Fresco。它们各有优点,以前一直用的是ImageLoader 做项目中的图片加载,由于作者宣布ImageLoader 不会在更新了,因此新的项目打算换一个图片加载...转载 2018-11-11 11:03:18 · 204 阅读 · 0 评论 -
动态获取权限的封装
普通权限(直接在XML布局添加就可以了)对于用户的隐私是没有危险的,只需要在AndroidManifest.xml中申请即可以授权Normal Permissions如下:ACCESS_LOCATION_EXTRA_COMMANDSACCESS_NETWORK_STATEACCESS_NOTIFICATION_POLICYACCESS_WIFI_STATEBLUETOOTH...原创 2018-11-13 23:37:29 · 427 阅读 · 0 评论 -
Android进阶:步骤四:Viewpager的基本使用
借鉴:https://blog.csdn.net/weixin_39251617/article/details/79399592大致内容:ViewPager实践的三种效果1. 引导界面 ViewPager 2. FragmentPageAdapter 3. 常见Tab切换效果一、简介Viewpager,视图翻页工具,提供了多页面切换的效果。Android 3.0后引入的一个...原创 2018-11-12 14:46:36 · 2893 阅读 · 0 评论 -
SQLiteOpenHelper中的getWritableDatabase和getReadableDatabase会的区别
作者:doMyselfzy链接:https://www.jianshu.com/p/a5a60451e886SQLiteOpenHelper中的getWritableDatabase和getReadableDatabase会的区别1. 两个方法干嘛的?两个方法都是用于获取数据库的读写对象,并不是字面上一个获取读取数据库的对象,另一个获取写数据库的对象。2. getWritable...转载 2018-10-23 16:42:03 · 1063 阅读 · 0 评论 -
Android进阶:Android数据库操作—步骤2: SQLite数据库
1. Sqlite 简介Sqlite 是一种轻量级,零配置的,可嵌入的程序驱动型的二进制文件,同时也是一种 关系型数据库。SQLite 是一个开源的关系型数据库,实现自包容、零配置、支持 事务的SQL数据库引擎。其特点是高度便携、使用方便、结构紧凑、 高效、可靠。鉴于 Sqlite 数据库的这些优点,现在流行的操作系统 Android 和 ios都选择使用 Sqlite 作为数据存...原创 2018-10-22 14:07:54 · 534 阅读 · 1 评论 -
文件存储
1、外部存储作为一个开发者,我们经常需要通过缓存一些文件到 SD 卡中,常见的方式就是,通过:File sdCard = Environment.getExternalStorageDirectory();获取 SD 卡根目录,然后自定义文件/文件名进行文件存储,这样做法的结果就是,当手机 安装了大量的 app 时,SD 卡根目录会迅速变得杂乱不堪,并且在 API 6.0 之后,...原创 2018-10-21 14:42:51 · 116 阅读 · 0 评论 -
Android中常见的4种线程池的理解(转)
转:https://blog.csdn.net/l540675759/article/details/62230562转:https://blog.csdn.net/seu_calvin/article/details/52415337线程在了解线程池之前,先给大家介绍下线程的概念:先看一个烧水的例子,图中看电视是主线,用户想在看电视的过程中去完成烧水这个操作,并且不耽误看电视...转载 2018-10-01 23:10:27 · 407 阅读 · 0 评论 -
Android进阶:网络与数据存储—步骤1:Android网络与通信(第4小节:ListView上)
内容概要:一、课程介绍二、ListView的准备工作ListView简介 ListView的实现步骤三、ListView简单应用Adapter的数据绑定 最简单ListView效果演示 获取系统已安装应用列表 优化性能一、课程介绍什么是ListView?列表视图应用场景:通讯录,短信列表 聊天联系人,聊天界面,好友动态 设置界面,各种列表界面 文...原创 2018-10-03 20:07:04 · 314 阅读 · 0 评论 -
Android进阶:网络与数据存储—步骤1:Android网络与通信(第5小节:ListView下)
内容概括:一、网络下载数据并显示在ListView上使用异步访问网络 解析获取的Json数据 加载数据到ListView上二、不同item的引用引用不同行布局一、网络下载数据并显示在ListView上1.1-使用异步访问网络 //异步访问网络 public class RquestDataAsyncTask extends AsyncTask<Void,...原创 2018-10-04 10:11:45 · 244 阅读 · 0 评论 -
BaseAdapter 基础知识
BaseAdapter 基础知识一.BaseAdapter 简介及使用场景BaseAdapter 是一个抽象类,常用于和 Android 中的一些控件如ListView ,GridView,ExpandableListview,Spinner 等控件结合来显示数据的一种 控件,在 Android 开发中占有很重要的位置。二.Adapter 结构图三.BaseAdapter 的...转载 2018-10-04 10:16:33 · 5700 阅读 · 0 评论 -
ListView 实现过程和常见问题
ListView 实现过程和常见问题ListView 简介一、ListView 是 android 中常用的一个控件,通常是以列表的形式展示数据,并且当加载的数据过多的时候可以分页加载,动态显示数据,通常是横向显示数据。二、ListView 实现数据加载的步骤:ListView 适合“自底向上”的开发模式 即从每个条目的显示组件 到对其进行 控制的数据结构 最后通过 Ac...转载 2018-10-04 10:33:35 · 449 阅读 · 0 评论 -
Android进阶:网络与数据存储—步骤1:Android网络与通信(第6小节:GridView)
内容概要:GirdView(网格视图)显示本地数据GirdView属性简介 案例一:用GirdView展示文字 案例二:用GridView显示已安装应用GridView显示网络用GridView加载网络图片(上) 用GridView加载网络图片(下) 一、GirdView(网格视图)显示本地数据1.GirdView属性简介 在 Android 程序设计中 GridVi...原创 2018-10-04 15:08:07 · 440 阅读 · 0 评论 -
Android 中Glide网络下载框架: Glide 4.0.0 RC1
1)Glide 框架简介Android Glide 是一个开源的图片加载和缓存处理的第三方框架。和 Android 的 Picasso 库类似,个人感觉比 Android Picasso 好用。Android Glide 使自身内部 已经实现了缓存策略,使得开发者摆脱 Android 图片加载的琐碎事务,专注逻辑业 务的代码。使用2)Glide 框架的使用Glide 框架的使用An...转载 2018-10-04 15:22:57 · 1694 阅读 · 0 评论 -
Android进阶:网络与数据存储—步骤1:Android网络与通信(第7小节:CadView)
内容概要:CardView基础CardView介绍 CardVie常用属性 CardView属性效果展示CardView案例实现CardVie基本操作 案例-布局搭建 案例-实体类创建 案例-功能实现 案例-适配 CardView开发注意事项一、CardView基础1、CardView介绍CardView是什么?Android5.0之后新增 com.andr...原创 2018-10-04 21:11:48 · 737 阅读 · 0 评论 -
Android 6.0 动态权限申请
1. 概述Android 6.0 (API 23) 之前应用的权限在安装时全部授予,运行时应用不再需要 询问用户。在 Android 6.0 或更高版本对权限进行了分类,对某些涉及到用户隐私 的权限需要在运行时根据用户的需要动态授予。这样用户就不需要在安装时被强迫同 意某些权限。2. 正常权限和危险权限Android 系统权限分为几个保护级别。需要了解的两个最重要保护级别是正常权 限和...转载 2018-10-04 22:34:56 · 156 阅读 · 0 评论 -
Android进阶:网络与数据存储—步骤1:Android网络与通信(第1小节:网络操作)
网络操作课程介绍:掌握Android中操作网络的方式,和相关的权限设置,以及数据解析。一、网络的基础知识1.1客户端与服务端什么是客户端(Client)? 享受服务的每一个用户什么是服务端(Server)? 为客户端提供资源数据1.2Http协议(超文本传输协议)1.什么是HttpHTTP 协议即超文本传送协议(Hyperte...原创 2018-09-30 10:07:37 · 1943 阅读 · 2 评论 -
Android进阶:网络与数据存储—步骤1:Android网络与通信(第2小节:Handler)
内容概览Handler是什么 为什么要使用Handler Handler/Looper/MessageQueue/Message Handler如何去实现(三种实现:1、下载文件并更新进度条 2、倒计时 3、打地鼠的游戏实现) 工作原理 如果更好的使用 扩展及总结一、课程背景:1、UI线程/主线程/AtivityThread一个应用启动会开启一个主进程,接着这主进程会开启...原创 2018-10-01 10:13:12 · 676 阅读 · 0 评论 -
Android进阶:手风琴特效—步骤2: ExpandableListView(可拓展的ListView)
ExpandableListView的基本介绍作者:CnPeng转https://www.jianshu.com/p/05df9c17a1d81 什么是ExpandableListView?有啥作用?首先看一张ExpandableListView 的继承关系图:ExpandableListView的继承关系一种用于垂直滚动展示两级列表的视图,和 ListView 的不同之...转载 2018-10-23 18:14:19 · 905 阅读 · 0 评论 -
设置Android软键盘的默认不弹出
转https://blog.csdn.net/forwordlove/article/details/52453311方法一:在OnCreate()函数中,加上下面的代码getWindow().setSoftInputMode( WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);方法二:在AndroidManifest.xml中...转载 2018-10-25 12:44:09 · 2705 阅读 · 1 评论 -
Android进阶:android本地数据操作—步骤2:Android本地文件操作
本地数据存储Android常用数据存储1. SharedPreferences存储数据 2. 文件存储(内部,外部) 3. SQLite数据库存储 4. ContentProvider存储数据 5. 网络存储数据一、SharedPreferences存储数据 SharedPreferences•用于存放一些类似登录的配置信息• 本质上是一个xml文件,是通过类似键值...原创 2018-10-21 14:13:47 · 1053 阅读 · 0 评论 -
Android进阶:步骤三:Android常用框架:OrmLite数据库框架
Orm(对象关系模型)OrmLite框架介绍 对比主流的Orm框架 OrmLite基本用法一、OrmLite 框架介绍:Ormlite 框架是第三方对数据库操作的封装的一个框架,为了提高开发效率,尤其是对某些 数据库操作特别频繁的 app,建议使用 OrmLite 框架。它是一个非常轻量级的数据库操作框架, 它的底层是根据反射机制来实现的。Why OrmLite? 大多...原创 2018-10-25 22:12:42 · 1735 阅读 · 2 评论 -
android6.0读写权限要在动态申请权限
一、读写文件的时候要获取权限1.在AndroidManifest.xml中声明权限 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <uses-permission android:name="android.permission.READ_EXTERN...原创 2018-10-21 11:52:18 · 4915 阅读 · 0 评论 -
Android进阶:步骤四:Android屏幕和图片的适配
修改:https://www.jianshu.com/p/759375113de9一、碎片化说起来,人们口中的 Android 碎片化主要表现在 Android 品牌和机型众多,Android 版本众多和 Android 设备的尺寸和分辨率众多。也就是Android碎片化并不局限于手机屏幕。本文仅限于与大家一起探讨屏幕适配相关内容。来看一张流传甚广的图片:上图每一个方框代表一种...转载 2018-11-12 17:35:50 · 823 阅读 · 0 评论