![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android 《第一行代码》
文章平均质量分 63
Nicholas_hzf
情不知从何而起,bug不知藏匿何处
展开
-
Android 学习之《第一行代码》第三版 笔记(一)Kotlin 继承时的括号到底写不写
内容学习来源:第 2 章 探究新语言,快速入门 Kotlin编程目录一、问题来源二、继承与构造函数(一)前置知识(二)括号代表了什么(三)继承时,什么时候不要加括号1. 子类的括号不用写:没有主构造函数或者不显式声明主构造函数,使用默认的空参主构造函数2. 父类的括号不用写:没有主构造函数,父类的括号就不用写一、问题来源Kotlin 作为 Android 开发的一级语言,在现阶段是我们必须要掌握的,工作之前从未接触过,入职前也只是草草翻阅了一遍《Kotlin 崛起次世代 Android 开发》一原创 2021-01-04 23:28:10 · 504 阅读 · 0 评论 -
Android 学习之《第一行代码》第二版 笔记(十五)运行时权限
一、运行时权限功能用户不需要在安装软件的时候一次性授权所有申请的权限,而是可以在软件的使用过程中再对某一项权限申请进行授权。分类:普通权限和危险权限完整的权限列表:https://blog.csdn.net/lianyi68/article/details/78588565我们在进行运行时权限处理时使用的是权限名,但是用户一旦同意授权了,那么该权限所对应的权限组中所有的其他权限也会同时被...原创 2018-10-23 15:47:25 · 321 阅读 · 0 评论 -
Android 学习之《第一行代码》第二版 笔记(十六)内容提供器之访问其他程序中的数据
一、概要内容提供器的用法:A. 使用现有的内容提供器来读取和操作相应程序中的数据。B. 创建自己的内容提供器给我们程序的数据提供外部访问接口。二、ContentResolver的基本用法借助ContentResolver类访问内容提供器中共享的数据。(通过Context的getContentResolver()方法获得该类的实例)。ContentResolver类中的CRUD方法都不...原创 2020-01-01 15:46:47 · 358 阅读 · 0 评论 -
Android 学习之《第一行代码》第二版 笔记(十七)使用通知
一、通知应用程序发出一条通知后,手机最上方的状态栏中会显示一个通知图标,下拉状态栏后可以看到通知的详细信息。二、用法1. 可以在活动、广播接收器以及服务里面创建。2. 创建通知的详细步骤:A.)使用NotificationManager对通知进行管理: NotificationManager manager = (NotificationManager)getSystemService...原创 2018-11-02 18:33:06 · 427 阅读 · 0 评论 -
Android 学习之《第一行代码》第二版 笔记(十九)从相册中选取图片
单击按钮从相册中选取图片并展示出来在此基础代码上修改:调用摄像头拍照1. 效果图2. MainActivity.javaimport android.Manifest;import android.annotation.TargetApi;import android.content.ContentUris;import android.content.Intent;imp...原创 2018-11-07 13:36:29 · 717 阅读 · 1 评论 -
Android 学习之《第一行代码》第二版 笔记(二十)播放多媒体文件
通过点击按钮实现播放、暂停和关闭(重置)音频和视频一、知识点1. 音频在Android中一般使用MediaPlayer类来实现播放音频文件。方法名功能描述setDataSource()设置要播放的音频文件的位置prepare()在开始播放之前调用这个方法完成准备工作start()开始或继续播放音频pause()暂停播放音频reset()...原创 2018-11-07 15:18:56 · 655 阅读 · 3 评论 -
Android 学习之《第一行代码》第二版 笔记(十八)调用摄像头拍照
单击按钮调用摄像头拍照并用ImageView显示出来一、知识点应用关联缓存目录:A.)指SD卡中专门用于存放当前应用缓存数据的位置。B.)调用getExternalCacheDir()方法可得到该目录。C.)具体路径:/sdcard/Android/data//cacheD.)选择该目录存放图片的原因:从Android 6.0开始,读写SD卡被列为危险权限,如果将图片存放在SD卡的任...原创 2018-11-05 17:02:31 · 1210 阅读 · 3 评论 -
Android 学习之《第一行代码》第二版 笔记(二十一)Material Design 实战 —— Toolbar 和 滑动菜单
一、Toolbar不仅继承了ActionBar的所有功能,而且灵活性很高,可以配合其他控件来完成一些Material Design 的效果。1. 效果图2. 代码:A.)value/styles.xml(隐藏掉ActionBar)<resources> <!-- Base application theme. --> <styl原创 2018-11-12 17:11:08 · 503 阅读 · 0 评论 -
Android 学习之《第一行代码》第二版 笔记(二十二)Material Design 实战 —— 悬浮按钮和可交互提示
实现基础:Android 学习之《第一行代码》第二版 笔记(二十一)Material Design 实战 —— Toolbar 和 滑动菜单一、悬浮按钮(FloatingActionButton)FloatingActionButton 是Design Support 库中提供的一个控件,可帮助我们比较轻松地实现悬浮按钮的效果,默认使用colorAccent 来作为按钮的颜色。1. 效果图...原创 2018-11-25 21:15:56 · 346 阅读 · 0 评论 -
Android 学习之《第一行代码》第二版 笔记(二十三)Material Design 实战 —— 卡片式布局
实现基础:Android 学习之《第一行代码》第二版 笔记(二十二)Material Design 实战 —— 悬浮按钮和可交互提示卡片式布局卡片式布局是 Materials Design 中提出的一个新的概念,可以让页面中的元素看起来就像在卡片中一样,并且拥有圆角和投影,实际上也是一个FrameLayout1. 效果图效果说明:未使用AppBarLayout时,RecyclerView...原创 2018-11-26 19:56:59 · 773 阅读 · 20 评论 -
Android 学习之《第一行代码》第二版 笔记(二十四)Material Design 实战 —— 下拉刷新和可折叠式标题栏
实现基础:Android 学习之《第一行代码》第二版 笔记(二十三)Material Design 实战 —— 卡片式布局一、下拉刷新SwipeRefreshLayout 是用于实现下拉刷新功能的核心类,由support-v4库提供。将想要实现下拉刷新的控件放置到 SwipeRefreshLayout 当中,就可以迅速让这个控件支持下拉刷新。1. 效果图2. 代码A.)activit...原创 2018-11-27 14:58:00 · 693 阅读 · 4 评论 -
Android 学习之《第一行代码》第二版 笔记(十四)详解持久化技术(二)
持久化技术之SQLite 数据库存储一、SQLite数据库SQLite是一款轻量级的关系型数据库,运算速度非常快,占用资源少。支持标准的SQL语法,遵循数据库的ACID事务。不用设置用户名和密码即可使用。二、SQLiteOpenHelper帮助类这是一个抽象类,使用需要创建一个类继承它,并重写两个抽象方法(onCreate(…) && onUpgrade(…)),在这两个...原创 2018-10-22 17:43:20 · 427 阅读 · 0 评论 -
Android 学习之《第一行代码》第二版 笔记(九)探究碎片(一)
一、碎片1. 碎片是什么:碎片(Fragment)是一种可以嵌入在活动当中的UI片段,能让程序更加合理和充分地利用大屏幕的空间。(可以理解成迷你型活动)2. 简单用法:在一个活动当中添加两个碎片,并让这两个碎片平分活动空间。1.)效果图(没钱买平板,CPU不支持使用Android Studio的模拟器,所以使用手机横屏演示)2.)新建一个左侧碎片布局和一个右侧碎片布局左侧碎片布局(...原创 2018-10-10 22:31:52 · 455 阅读 · 0 评论 -
Android 学习之《第一行代码》第二版 笔记(十一)详解广播机制(一)
一、广播机制简介1. 四大组件之一2. Android 提供了一套完整的API,允许应用程序自由地发送和接收广播。A. 发送广播借助IntentB. 接收广播借助广播接收器(Broadcast Receiver)3. 广播类型:A. 标准广播: 完全异步执行,广播发出后,所有的广播接收器几乎会同时接收到该广播消息。效率高但无法被截断。B. 有序广播: 同步执行,广播发出后,同一时刻仅...原创 2018-10-15 22:36:42 · 269 阅读 · 1 评论 -
Android 学习之《第一行代码》第二版 笔记(一)Hello World !
一、Android 应用开发特色1. 四大组件活动(Activity):门面,应用中看的到的东西均放在活动中。 服务(Service):在后台默默运行,即使退出应用,仍可继续运行。 广播接收器(Broadcast Receiver):接收或发送各处广播消息。 内容提供器(Content Provider):为应用程序之间共享数据。2. 丰富的系统控件3. SQLite数据库...原创 2018-09-10 16:18:39 · 750 阅读 · 0 评论 -
Android 学习之《第一行代码》第二版 笔记(二)Activity探究活动(一)
一、在活动中使用Toast和Menu1. 效果图2. 代码A. 简介Toast: 是Android系统提供的一种良好的提醒方式,可以将一些短小的信息通知给用户,该信息在一段时间后自动消失,并且不占用任何屏幕空间。 Menu: 菜单显示,能让菜单得到展示的同时,还不占用任何屏幕空间。B. 相关信息:应用名称为:MenuTest 活动名称为:MenuActivit...原创 2018-09-12 15:23:07 · 442 阅读 · 0 评论 -
Android 学习之《第一行代码》第二版 笔记(三)Activity探究活动(二)
一、活动的生命周期1. 返回栈:A. Android使用任务(Task)来管理活动。B. 一个任务就是一组存放在栈里的活动的集合,这个栈就是返回栈。C. 系统总是会显示处于栈顶的活动给用户。2. 活动状态:A. 运行状态:活动位于返回栈的栈顶时。B. 暂停状态:活动不再处于栈顶位置,但仍然可见。C. 停止状态:活动不再处于栈顶位置,并且完全不可见。D. 销毁状态...原创 2018-09-12 20:40:10 · 295 阅读 · 0 评论 -
Android 学习之《第一行代码》第二版 笔记(六)UI开发的点点滴滴(三)
ListView一、ListView的简单用法1. ListView 允许用户通过手指上下滑动的方式将屏幕外的数据滚动到屏幕内,同时屏幕上原有的数据则会滚出屏幕。2. 实现:A. 效果图:B. 代码:activity_main.xml<?xml version="1.0" encoding="utf-8"?><android.support.constr原创 2018-09-19 16:37:36 · 306 阅读 · 0 评论 -
Android 学习之《第一行代码》第二版 笔记(四)UI开发的点点滴滴(一)
一、常用控件使用方法(部分属性)1. TextView:用于显示文本信息A. 效果图B. 代码<TextView android:id="@+id/text_view&amp原创 2018-09-14 17:33:39 · 344 阅读 · 0 评论 -
Android 学习之《第一行代码》第二版 笔记(七)UI开发的点点滴滴(四)
RecyclerViewListView 的扩展性不好,只能实现数据的纵向滚动效果,无法实现横向滚动。RecyclerView 不仅可以轻松实现ListView 同样的效果,还优化了ListView 中存在的各种不足之处。RecyclerView 横向滚动1. RecyclerView属于新增控件,需要添加相应的依赖库2. activity_main.xml<?xml vers...原创 2018-09-25 18:59:17 · 389 阅读 · 0 评论 -
Android 学习之《第一行代码》第二版 笔记(八)UI开发的点点滴滴(五)
编写界面的最佳实践----较为复杂的聊天界面一、准备1. Nine-Patch 图片这是一种被特殊处理过的png图片,能够指定哪些区域可以被拉伸,哪些区域不可以。具体制作方法,参照书本P132-1352. 为RecyclerView添加依赖库RecyclerView的使用可参考Android 学习之《第一行代码》第二版 笔记(七)UI开发的点点滴滴(四)二、界面效果三、代码编写...原创 2018-10-04 22:40:23 · 264 阅读 · 0 评论 -
Android 学习之《第一行代码》第二版 笔记(十)探究碎片(二)
一个简易版的新闻应用同时兼容手机和平板的应用程序一、布局news_content_frag.xml额我的代码里面是news_content_fragment.xml,图片打错了二、代码编写1. 实体类(News.java)//新闻实体类public class News { private String title; //新闻标题 private Strin...原创 2018-10-14 21:26:28 · 386 阅读 · 0 评论 -
Android 学习之《第一行代码》第二版 笔记(十二)详解广播机制(二)
广播的最佳实践——实现强制下线功能思路:在界面上弹出一个对话框,让用户无法进行任何操作,必须点击对话框中的确定按钮,然后回到登录界面即可。一、效果图1. 登录界面并输入账号密码2. 登陆后的界面3. 强制下线4. 退回登陆的界面二、代码1. 用于管理所有活动的类(ActivityCollector.java)import android.app.Activity;imp...原创 2018-10-18 14:10:35 · 287 阅读 · 0 评论 -
Android 学习之《第一行代码》第二版 笔记(十三)详解持久化技术(一)
一、持久化技术简介1. 瞬时数据:存储在内存中,当内存被回收时,会丢失的数据。2. 数据持久化:将内存中的瞬时数据保存到存储设备中,保证设备关机后,数据不会丢失。3. Android中的三种实现数据持久化功能的技术:A. 文件存储 B. SharedPreference 存储 C. 数据库存储二、文件存储最基本的一种数据存储方式,不对所存储的数据进行任何的格式化处理,适合一些简单的...原创 2018-10-18 16:08:40 · 241 阅读 · 0 评论 -
Android 学习之《第一行代码》第二版 笔记(五)UI开发的点点滴滴(二)
创建自定义控件1. 常用控件和布局的继承结构2. 引入布局A. 在res→layout目录下新建一个布局title.xml,代码如下:&amp;amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;amp;gt;&amp;amp;lt;LinearLayout原创 2018-09-18 17:22:40 · 254 阅读 · 0 评论