Android从零开始
文章平均质量分 60
本专栏从andorid的布局开始讲起,Android中常用的控件,四大组件,以及完整的小项目.
馮贰爺
这个作者很懒,什么都没留下…
展开
-
第二天ARouter的介绍和使用
官方使用说明官网典型应用从外部URL映射到内部页面,以及参数传递与解析跨模块页面跳转,模块间解耦拦截跳转过程,处理登陆、埋点等逻辑跨模块API调用,通过控制反转来做组件解耦基础功能1, 添加依赖和配置android { defaultConfig { ... //每一个用的build.都要加 javaCompileOptions { annotationProcessorOptions {原创 2020-09-14 23:55:40 · 1153 阅读 · 0 评论 -
第二天Android系列之组件化Calces
什么是组件化就是将一个App分成多个模块,每个模块都是一个组件(Module),开发过程中我们可以让这些组件相互依赖,或者单独调试部分组件等,但是最终发布的时候就是将这些组件合并成统一的Apk。为什么要组件化随着产品的迭代,业务越来越复杂,随之带来的是项目结构复杂度极度增加,此时就会有如下几个问题:1、业务变化太快,单一的工程业务模块耦合度太高,牵一发动全身2、对工程作任何修改都需要编译整个工程3、功能测试和系统测试每次都需要进行4、团队协作开发存在很多冲突,不得不花费时间和精力进行沟通,原创 2020-09-13 18:38:31 · 620 阅读 · 1 评论 -
android开发利器之BufferKnife的介绍和使用
BufferKnife介绍使用导包插件安装使用介绍butter knife是出自JakeWharton的一个开源库,它通过注解的方式来替代android中view的相关操作。减少大量的findViewById以及setOnClickListener代码,且对性能的影响较小.ButterKnife项目地址:https://github.com/JakeWharton/butterkni...原创 2020-04-05 10:01:25 · 1212 阅读 · 0 评论 -
android动画之补间动画
补间动画xml的创建动画准备旋转动画平移动画透明度(渐变)缩放java代码中创建动画旋转动画平移动画透明度缩放所谓的补间动画,就是补全两个不同图片中缺失的过程.比说一个图片的尺寸是100100 ,另一个是200200. 那么100到200这个放大的过程就可以用补间动画来实现.xml的创建动画准备首先在res文件夹下创建anim动画文件夹在anim文件夹创建使用的动画文件旋转动画1...原创 2020-04-01 22:53:47 · 476 阅读 · 0 评论 -
android动画之帧动画
帧动画所谓的帧动画就是多张图片连续起来播放.1,在drawable下创建资源文件<?xml version="1.0" encoding="utf-8"?><animation-list xmlns:android="http://schemas.android.com/apk/res/android" android:oneshot="false"> ...原创 2020-04-01 21:35:04 · 212 阅读 · 0 评论 -
EventBus的介绍和使用
EventBus的介绍和使用EventBus的介绍作用引入成员综合小案例:1,Activity中的布局:2 Activity中的代码:3 fragment中的代码:4 .fragment中的布局只有一个textView 不放代码了.线程模型线程模型的用处:官方网址:EventBus的介绍EventBus是一种用于Android的事件发布-订阅总线作用它简化了应用程序内各个组件之间进行...原创 2020-03-04 17:46:30 · 2542 阅读 · 0 评论 -
第一天.对话框
第一天.对话框第一标题第一标题下的第一个小题第一标题下的第二个小题第二个标题package com.fenghongzhang.a1712a;import androidx.appcompat.app.AlertDialog;import androidx.appcompat.app.AppCompatActivity;import android.content.Dialog...原创 2020-02-20 15:26:51 · 553 阅读 · 0 评论 -
第十八课:Activity中实现播放器的所有功能.
Activity中实现播放器的所有功能.activity 的布局<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk...原创 2020-01-09 17:34:13 · 638 阅读 · 0 评论 -
购物车的主要业务逻辑
购物车的主要业务逻辑MainActivity的代码布局文件xmllistView的布局共享的类实物类标题的布局MainActivity的代码package com.example.shop;import android.os.Bundle;import android.util.Log;import android.view.LayoutInflater;import android...原创 2019-11-23 10:54:34 · 1058 阅读 · 0 评论 -
用两个listView实现手机通讯的功能
用两个listView实现手机通讯的功能主要的activity代码xml的布局文件主要的activity代码package com.example.month1;import androidx.appcompat.app.AppCompatActivity;import android.graphics.Color;import android.os.Bundle;import a...原创 2019-11-23 10:49:17 · 458 阅读 · 0 评论 -
课后练习
课后练习1.技能一:第2个月所有知识综合题2.技能二:短信3.技能三:QQ聊天欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图...转载 2019-07-26 15:54:17 · 455 阅读 · 0 评论 -
课后练习二
课后练习二1.技能一:2.技能二3.技能三4.技能四:5.技能五:6.Service:技能六:7.Service:技能七:8.难题:技能八:完成一个QQ聊天软件9.自定义内容提供者+Service:技能九10.技能十11.技能十一12.自定义内容提供者:技能十二13.技能十三14.难题:技能十四:15.难题:QQ16.难题:发短信1.技能一:1) 创建一个项目,分别命名为MonthTest。...原创 2019-07-26 15:55:33 · 774 阅读 · 0 评论 -
课后练习三
课后练习三理论技能技能0:Fragment生命周期技能一:技能二技能一:技能二:技能一:技能一:明天日考题技能二:不能复用课上的代码,重新敲技能一:明天日考题技能二:技能三:从底部弹出窗体理论1.理论题库:第11单元2.xmind总结:(1)普通广播实现流程(2)EventBus的实现流程(3)Otto的实现流程(4)Fragment的生命周期以及实现流程3.说课技能技能0:F...转载 2019-07-26 15:57:09 · 585 阅读 · 0 评论 -
课后练习四
课后练习四Day1:对话框作业技能一:不看代码将这几种对话框写一遍技能二:自定义对话框技能三:技能四:Day2:弹出窗体作业技能1:微信聊天技能2:底部弹出窗体技能3Day3作业:技能1:技能2:明天日考题技能3:把昨天的技能1和技能3没有完成的同学完成技能4:Day4:SP存储+SD存储+三级缓存+二次采样作业技能一:技能二:使用SP完成记住密码功能技能三:录屏敲代码三级缓存+二次采样2遍Day...转载 2019-07-26 15:59:54 · 846 阅读 · 0 评论 -
第十六天Service进程间通信
Service进程间通信Service-AIDL进程间通信https://blog.csdn.net/qq_34178710/article/details/85012415Service-Messager实现进程间通信https://blog.csdn.net/qq_34178710/article/details/85012427...转载 2019-07-22 20:49:13 · 986 阅读 · 0 评论 -
第八天案例+fragment+viewPager(引导页)+小圆点+跳转
fragment+viewPager引导页+小圆点+跳转思路Activity中的代码第三个fragment中的代码思路1,viewpager 和fragment 做引导页2,创建三个fragment,最后一个里面添加跳转按钮和倒计时3,fragment和activity用handler通讯4,主要页面逻辑在welcomeActivity和第三个fragment里面.Activity中的...原创 2019-08-09 17:34:11 · 941 阅读 · 0 评论 -
第一周的周考题
第一周的周考题7月第一周(难)8月第一周(平常)7月第一周(难)8月第一周(平常)题目描述新建Android工程项目MainActivity layout中设置一个按钮居中显示,点击按钮进行网络数据获取(接口在下方)网络数据请求要求放到AsyncTask中执行。使用AsyncTask更新下载进度条对话框展示下载进度,下载完毕之后关闭进度条对话框并且发送一个通知。通知使用自定义视图参...原创 2019-08-14 15:32:23 · 699 阅读 · 0 评论 -
第二周的周考题
第二周的周考题7月(简单)7月(难)8月(普通)7月(简单)1.创建ZhouKao工程(5分)2.用三个fragment和viewpager做成引导页,引导页第三个页面,有立即跳转按钮,右上角有5秒倒计时显示. 点击按钮或时间到了,都可以跳转到首页.注意不能重复跳转. 引导页底部有小圆点跟着走.3.第二次打开程序,不走引导页.直接跳转到首页.4.首页布局如下:5.点击fragment...原创 2019-08-14 16:10:50 · 869 阅读 · 1 评论 -
月考题汇总
月考题汇总7月7月创建一项目。模拟微信中和群聊天的UI界面。1.群聊天界面如下:2.长按聊天界面中任何一条聊天信息 都会在信息的顶部,弹出一个PopupWindow窗口,界面如下3.点击PopupWindow中的删除按钮,弹出Dialog,界面如下。4.点击删除,将会删除该条信息,并刷新UI。5.点击2中PopupWindow窗口中的更多按钮,显示界面如下。底部弹出一Popup...原创 2019-08-14 16:16:01 · 676 阅读 · 0 评论 -
第三周的周考题
第三周的周考题6月(普通-于老师)8月(难-鑫一老师)6月(普通-于老师)1.按要求完成下面的各项需求。2.创建项目,实现登录注册页面,注册页面,有用户昵称,用户名,密码,确认密码,注册,判断密码和确认密码相同,确认后存储数据库3.登录页面 实现页面登录,用户名和密码从数据库中取出,并且判断登录。登录成功进入主页面4.主页面有联系人列表。用ContentProvicer读取联系人列表,展...原创 2019-08-14 16:23:10 · 927 阅读 · 0 评论 -
练习手册
第8天 sp 和sd技能一:技能二:完成记住密码功能技能三1)用异步从网下下载一个json存到sd中,并读取2)用异步下载一个图片存到sd卡中,并读取.第9天Sqltie数据库技能一 用原生sql实现。运用SQLite实现下面效果,实现增删改查,实现四个按钮,第一个按钮实现添加十条数据,第二个按钮实现删除指定的一条数据,第二个按钮实现改变一条数据,第四个按钮实现查找数据,数据库...原创 2019-09-07 15:19:24 · 267 阅读 · 0 评论 -
第一天对话框
第一天对话框普通童话款小普通对口单选对话框小单选普通童话款小普通对口package com.fhz.account.adapter;import android.content.Context;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;impo...原创 2019-09-26 15:29:43 · 841 阅读 · 0 评论 -
第10天ContentProvider内容提供者的使用
ContentProvider 的使用ContentProvider 的介绍和使用ContentProvider介绍ContentProvider项目中应用ContentProvider机制进程内数据共享自定义ContentProvider进程间数据共享进程间ContentProvider增删改查自定义权限权限是什么自定义权限使用ContentProvider 的介绍和使用导入注解的包im...转载 2019-07-15 23:02:11 · 1951 阅读 · 0 评论 -
第2天Menu菜单和PopupWindow窗口
https://blog.csdn.net/qq_34178710/article/details/84992873原创 2019-07-26 10:05:58 · 3723 阅读 · 0 评论 -
第1天Dialog对话框
这个网站折叠代码。阅读起来极其恶心。删了全部文章。转战简书了以下是正文内容https://www.jianshu.com/p/ea3b7d478f42原创 2019-07-26 10:02:34 · 3424 阅读 · 0 评论 -
ViewPager案例1:向导页
向导页https://blog.csdn.net/qq_34178710/article/details/85060789#ViewPager_4转载 2019-07-12 08:45:36 · 414 阅读 · 0 评论 -
第十一天ContentProvider 制作一个图片浏览器
图片浏览器清单文件中的授权 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />xml布局<?xm...原创 2019-07-18 15:33:25 · 651 阅读 · 0 评论 -
第七单元:Fragment+ViewPager+TabLayout
Fragment+ViewPager+TabLayoutTabLayout的介绍TabLayout的介绍Tablayout继承自HorizontalScrollView,用作页面切换指示器,因使用简便功能强大而广泛使用在App中。官方介绍,TabLayout 是一个横向标签显示的布局,效果就是现在很多新闻客户端的那种顶部标签展示效果,并支持指示器、 ViewPager 联动简单使用按...原创 2019-07-12 10:23:19 · 2009 阅读 · 1 评论 -
第十一天ContentProvider 系统URI
ContentProvider 系统URI案例一,获取手机联系人,展现在ListView中并存储到数据库中案例二,获取手机短信案例一,获取手机联系人,展现在ListView中并存储到数据库中(1)添加获取手机联系人的权限 <uses-permission android:name="android.permission.WRITE_CONTACTS"></uses-p...转载 2019-07-16 09:40:44 · 1620 阅读 · 1 评论 -
第三单元:双击退出,Notitfcation 通知
双击退出,Notitfcation 通知1,双击退出新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入1,双击退...原创 2019-07-07 19:14:48 · 2707 阅读 · 0 评论 -
ViewPager案例:Viewpager+Fragment实现微信底部导航
Viewpager+Fragment实现微信底部导航https://blog.csdn.net/qq_34178710/article/details/85061025#1ViewPager4Fragment1FragmentPagerAdapter_10转载 2019-07-11 17:02:22 · 548 阅读 · 0 评论 -
第6天ViewPager的介绍和使用
ViewPager的介绍和使用ViewPager简介和用处ViewPager两个Adapter方法的区别FragmentStatePagerAdapterFragmentPagerAdapterViewPager与Fragment结合使用ViewPager简介和用处ViewPager 是 android 扩展包 v4 包中的类,这个类可以让用户左右切换当前的 viewViewPager 直...原创 2019-07-10 22:26:15 · 1580 阅读 · 0 评论 -
第9天Sqltie数据库
Sqltie数据库SQLite数据库介绍SQL语句复习数据库使用及两个核心类使用事务批量处理数据查询的扩展 (一个查询的案例)SQLite数据库介绍1.Android 系统中集成的轻量级的数据库2.特点:轻量级 只用一个动态的库, 是以单个文件的形式进行存取跨平台 支持多个操作系统零配置 无需安装, 直接使用嵌入式 内嵌到手机中3.在程序的内部可以通过数据库的名称访问, 其他应...原创 2019-07-14 23:54:44 · 1807 阅读 · 0 评论 -
第5天Fragment高级进阶
Fragment高级进阶Fragment 传值介绍activity 给 fragment传值fragment 给 activity传值Activity中的代码Activity中的xml文件fragment中的代码fragment的xml文件fragment 给 fragment 传值handler传值接口回调传值fragment 多层嵌套案例(微信底部按钮与fragment实现界面切换)Frag...原创 2019-07-09 18:13:01 · 1978 阅读 · 1 评论 -
第8天SharedPreferences存储+SD卡存储
SharedPreferences存储+SD卡存储SharedPreferences使用方式写数据读数据使用案例1案例2 轮播图广告文件存储:内部文件存储openFileOutputopenFileInput外部文件存储(SD卡)SharedPreferencesSharedPreferences简称Sp(后面都会称Sp),是一种轻量级的数据存储方式,采用Key/value的方式 进行映射,...转载 2019-07-12 23:43:13 · 2238 阅读 · 0 评论 -
第十七天Application的生命周期和上下文的应用场景
Application的生命周期和上下文的应用场景Application是什么?Application的应用通过Application传递数据Application数据共享Application数据缓存易导致的错误Application的生命周期生命周期演示保活进阶利用 Activity 提升权限利用 Notification 提升权限利用系统广播拉活利用第三方应用广播拉活利用系统Service机...转载 2019-07-23 16:04:26 · 964 阅读 · 0 评论 -
第十三单元:BroadCastReceiver运用-广播接受者
BroadCastReceiver运用全局广播:本地广播案例 1 BroadCastReceiver和Notifcation案例 2 使用BroadCastReceiver发送消息更新UI全局广播:发送的广播事件可被其他应用程序获取,也能响应其他应用程序发送的广播事件(可以通过 exported–是否监听其他应用程序发送的广播 在清单文件中控制) 全局广播既可以动态注册,也可以静态注册。默...原创 2019-07-18 21:44:01 · 1159 阅读 · 0 评论 -
第十四单元:Service生命周期和启动方式
Service生命周期和启动方式Service介绍Service特点如何创建ServiceService的启动方式以及生命周期启动方式一 (startService)启动方式二 (bindService)Service介绍1.Service,服务,是四大组件之一, 和Activity 非常相似, 一般运行在后台, 没有用户界面, 可执行的程序2.Activity 和 Service的区别...原创 2019-07-21 23:44:38 · 1814 阅读 · 1 评论 -
设计模式:构造者(Builder)模式
构造者(Builder)模式构造者(Builder)模式构造者(Builder)模式Builder模式是为了弥补Java语言设计上的不足,话不多说,下面我们一起来看个栗子就知道啦!public class User{ String name; int age; String email; String address; public User(...转载 2019-07-26 09:59:17 · 259 阅读 · 0 评论 -
案例:画一个翻页用的小圆点
小圆点在drawable创建两个xml在drawable创建一个选择器给可控赋值在drawable创建两个xml<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval">...原创 2019-07-26 08:23:14 · 519 阅读 · 0 评论