自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

zhu522959034的博客

移动开发学习笔记

  • 博客(36)
  • 收藏
  • 关注

转载 Android ImageView ScaleType:图解

**Android ImageView ScaleType:图解**本文转载:https://www.cnblogs.com/lgfrank/p/8341898.htmlImageView的scaleType的属性有好几种,分别是matrix(默认)、center、centerCrop、centerInside、fitCenter、fitEnd、fitStart、fitXYandroid:scaleType="center"保持原图的大小,显示在ImageView的中心。当原图的size大于Im

2021-02-04 18:07:43 234

原创 Android进阶之ANR原因及定位

Android进阶之ANR原因及定位        ANR全称是 Application Not Responding(应用程序无响应),从事Android开发的同学或多或少都有遇到过,尤其是做芯片方案平板开发,在入门级芯片开发过程中,由于内置的apk的过多,内存小,在操作中就很容易出现,如何快速分析并定位解决,提高用户体验,是开发者必须掌握的知识。        ANR最直观的体验是用户在操作app时,感觉界面卡顿,无响应

2020-06-05 17:36:11 1930

原创 DataBinding的用法介绍

DataBinding的用法介绍DataBinding是Google 发布的一个数据绑定框架,它能够让开发者减少重复性非常高的代码,如findViewById 这样的操作。其核心优势是解决了数据分解映射到各个view的问题,在MVVM框架中,实现的View和Viewmode的双向数据绑定。用法案列1.在Module的build.gradle android模块中添加如下配置android { dataBinding { enabled = true }}2.创建数据模型,比如一个简

2020-05-20 15:02:15 860

原创 Android 动画机制(三)

Android 动画机制(三)ObjectAnimator本章主要讲解ObjectAnimator 的使用方法,由于ObjectAnimator是派生自ValueAnimator的,主要是在补充ValueAnimator的动画部分,将动画的属性值设置给指定的对象,二者最大的不同是需要指定动画的具体对象和对象的属性名。ObjectAnimator 实例方法public static O...

2020-04-20 18:14:50 190

原创 Android 动画机制(二)

Android 动画机制(二)属性动画(Property animation)上一篇文章我们介绍了补间动画,最后我们强调了,补间动画只能改变View的绘制效果,View的真实属性是没有变化的,而属性动画可以直接改变View对象的属性值,属性动画的基类Animator 是一个抽象类,所以我们需要集成这个类,并重写其中的方法,Android SDK默认为开发者提供了几个子类。属性动画的基本属性:...

2020-04-20 16:29:59 317

原创 Android 动画机制(一)

Android 动画机制(一)1.逐帧动画(Frame Animation)    在Android中实现逐帧动画,就是有设计师给出一系列的状态不断变化的图片,开发者可以指定动画中每一帧对应的图片和持续的时间,然后就可以开始播放动画了,可以通过代码和XML资源文件实现:XML 实现方式将处理好的图片放入drawable目录中,在res/dra...

2020-04-17 18:33:49 194

翻译 Android触摸事件传递机制

在实际的开发中,我们往往会遇到一些嵌套的View,ViewGroup问题,就会有一些触摸事件,或者滑动事件相互冲突的问题,想要正确的处理这些问题,就需要开发者对View的事件传递机制有一定的了解,本章我们就介绍一下View的触摸事件传递机制。1.1 触摸事件类型触摸事件对应的是 MotionEvent 类,事件的类型主要有如下3种:ACTION_DOWN : 用户按下事件。ACTION_...

2019-07-03 18:21:19 519

原创 ConstraintLayout 开发报错:This view is not constrained. It only has designtime positions, so it will jum

ConstraintLayout 在布局中如出现如下报错信息:此时,你要检查一下ConstraintLayout中的约束条件是否完整所谓的完整就是水平和垂直的约束都要有

2019-03-13 17:17:17 522

转载 android px dp 和sp 单位解析

px即像素,1px代表屏幕上一个物理的像素点;px单位不被建议使用,因为同样100px的图片,在不同手机上显示的实际大小可能不同,分辨率高的显示偏小,分辨率低的显示偏大,对手机开发适配不是很好,不建议直接在代码中直接使用。dp / dip它与“像素密度”密切相关,所以首先我们解释一下什么是像素密度。像素密度的单位dpi是Dots Per Inch的缩写,即每英寸像素数量。不同的手机/平板...

2019-03-12 18:38:19 234

转载 Git 分支管理和版本控制

Git 分支管理几乎每一种版本控制系统都以某种形式支持分支。使用分支意味着你可以从开发主线上分离开来,然后在不影响主线的同时继续工作。创建和切换分支命令git branch //后面不跟参数时,表示查看当前所有的分支git branch (branchname) //创建分支git checkout (branchname) //切换分支git checkout -b (bran...

2019-03-06 16:56:01 791 1

转载 Git 创建仓库和基本操作命令

Git 创建仓库和基本操作命令文件转载git笔记:http://www.runoob.com/git/git-basic-operations.htmlgit initGit 使用 git init 命令来初始化一个 Git 仓库,Git 的很多命令都需要在 Git 的仓库中运行,所以 git init 是使用 Git 的第一个命令。在执行完成 git init 命令后,Git 仓库会生成...

2019-03-06 14:39:54 643

转载 Git 工作区、暂存区和版本库

摘抄地址:Git 工作区、暂存区和版本库基本概念我们先来理解下Git 工作区、暂存区和版本库概念工作区:就是你在电脑里能看到的目录。暂存区:英文叫stage, 或index。一般存放在 “.git目录下” 下的index文件(.git/index)中,所以我们把暂存区有时也叫作索引(index)。版本库:工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库。下面这个图展示了...

2019-03-06 13:45:53 236

原创 Android 5.X新特性详解(二)

Tinting 和 ClippingAndroid 5.X在对图像的操作上有了更多的功能,下面来看看 Android 5.X 的两个对操作图像的新功能 —-Tinting(着色)和 Clipping(裁剪)。Tinting(着色) Tinting 的使用非常简单,只要在XML中配置好tint和tintMode 就可以了,对于配置的组合效果,只需要大家实际操作一下,就能非常清楚的理解处理...

2018-08-24 15:09:15 158

原创 Android 5.X新特性详解(一)

Android 5.X系列开始使用新的设计风格 Material Design 来统一整个Android系统的界面设计风格,与之前的设计风格不同,这次的 Material Design 设计将Android 带到了一个全新的高度,同时 Google 在官网上退出了全新的设设计指南—-全面的讲解了 Material Design 的整个实现规范与示例: Google在其Design网站上,有...

2018-08-23 16:44:39 578

原创 笔记 Androd 自定义控件学习(六)

说明:文章来自《Android群英传》学习笔记事件拦截机制分析当Android系统捕获到用户的各种输入事件后,如何准确地传递给真正需要这个事件的控件呢?Android给我们提供了一套完整的事件传递,处理机制,来帮助开发者完成准确的事件分配与处理。 关于触摸事件,大家都很清楚了,就不做解释。Android为触摸事件封装了一个类—MotionEvent,如果重写 onTouchEvent()...

2018-06-29 15:44:56 204

原创 笔记 Androd 自定义控件学习(五)

说明:文章来自《Android群英传》学习笔记自定义ViewGroup今天我们来学习如何创建自定义ViewGroup,自定义ViewGroup通常需要重写onMeasure()方法来对子View进行测量,重写onLayout()方法来确定子View的位置,重写onTouchEvent()方法增加相应事件。本例实现一个类似Android 原生控件 ScrollView 的自定义 View...

2018-06-28 18:05:08 200

原创 笔记 Androd 自定义控件学习(四)

重写View来实现全新的控件当Android系统原生的控件无法满足我们的需求时,我们就可以完全创建一个新的自定义View来实现需要的功能。创建一个自定义的View,难点在于绘制控件和实现交互。通常自定义View需要继承View类,并重写他的onDraw(),onMeasure()方法来实现绘制逻辑,同时通过重写onTouchEvent()等触控事件来实现交互逻辑。下面通过一个案列,介绍一下...

2018-06-26 14:31:34 178

转载 LitePal 2.0版本 使用

本文转载郭霖的博客,感谢郭神的分享。 原文地址:https://blog.csdn.net/guolin_blog/article/details/80586028今天很高兴告诉大家一个好消息,LitePal又出新版本了。算了一下,上个版本1.6.1已经是半年前推出的了,而整个开源项目自2014年推出以来,我已经维护了有四年之久。这四年以来,我不断地完善着LitePal的代码,修复各种大...

2018-06-25 18:29:42 3859 1

转载 笔记 Androd 自定义控件学习(三)

自定义ViewAndroid 给我们提供了丰富的组件来创建不同的UI效果,同时也提供了非常方便的扩展方法。通过继承Android的系统组件,我们可以非常方便的扩展现有的功能,在系统组件的基础上创建新的功能,甚至可以直接自定义一个控件,实现Android系统控件所没有的功能。 在自定义View时,我们通常会去重写一些Android的方法来绘制View的显示内容,另外通过自定义attrs属性,还...

2018-06-19 14:13:34 324

转载 笔记 Androd 自定义控件学习(二)

view的绘制文章方法使用案例,参考博客:https://blog.csdn.net/whuhan2013/article/details/51404737测量好一个View之后,我们就可以简单的重写onDraw()方法,并在Canvas 对象上来绘制所需要的图形。 要想在Android 的界面中绘制相应的图像,就必须在 Canvas 上进行绘制,Canvas就像是一个画板,使用Pain...

2018-06-15 17:14:05 273

原创 笔记 Androd 自定义控件学习(一)

View的测Android 系统在绘制View前,需要对View进行测量,即告诉系统改画一个多大的View,这个过程在 onMeasure() 方法中进行。Android系统给我们提供了一个帮助我们测量View的类-MeasureSpec类,MeasureSpec是一个32为的值,其中高2位为测量的模式,低30为为测量的大小。...

2018-06-13 10:45:33 335

原创 QT 学习笔记 QListWidget,QTableWidget和QTreeWidget

文章参考:https://blog.csdn.net/sinat_35261315/article/details/54730818Qt提供了三个可以直接使用的视图类用于呈现模板中的数据,分别是QListView,QTableView和QTreeView。紧接着Qt又提供了基于这三个类设计的更方便的类,分别是QListWidget,QTableWidget,QTreeWidget。QLis...

2018-05-11 15:49:59 2986

原创 QStringList 的学习笔记

因公司项目,开始学习QT,这里做一些学习笔记,一遍以后忘记了可以翻阅。 笔记内容写的简单,勿怪。 参考博客:https://blog.csdn.net/u013360881/article/details/52170487 QStringList 初始化 QStringList qstrList; qstrList<<"Android" << "Qt

2018-05-11 12:49:41 34884 2

原创 Android 序列化

Android 在传递数据时,我们一般使用的是Intent的putExtra()方法来传递数据,但是putExtra()方法所支持的数据类型是有限的,只支持一些常用的数据类型,比如 int,String等。当我们想传递一些自定义的对象的时候,就需要用其他的方式来处理,Android使用Intent来传递对象数据通常有两种实现方式:Serializable 和 Parcelable 本文介绍一下这...

2018-03-08 15:58:06 331

原创 Activity任务栈的使用(启动模式介绍)

Android 任务栈简介android应用程序通常会被拆分为多个activity,各个activity之间通过Intent进行连接,而android系统通过栈结构保存整个app的activity。合理的任务栈可以提高程序的性能。当一个app启动时,如果环境中不存在改app的任务栈,那么系统就会创建一个任务栈,此后,这个app所启动的activity都将在这个任务栈中被管理,这个栈也被称为一个

2018-01-08 15:54:16 1176

原创 LitePal的基本用法

本文LitePal的使用方法来自郭霖的第一行代码。 博客地址 : http://blog.csdn.net/guolin_blog/article/details/38461239传统的数据库操作都是通的SOL语句进行的,使用起来也不是很方便,今天我们就介绍一下LitePal框架 LitePal采取的是对象关系映射(ORM)的模式,将面向对象的语言和面向关系的数据库之间建立一种映射关系,这就

2017-06-27 18:07:04 3807

原创 Android JSON原生解析的几种思路和GSON的使用方法

本文将总结介绍一下Json数据的各种解析的思路和方法1,原生的Json数据的解析思路拿到一段需要解析的json数据,(数据来源于聚合数据){"resultcode":"200","reason":"Return Successd!","result":{ "province":"浙江", "city":"杭州", "areacode":"0571", "zip"

2017-06-27 15:44:34 530

原创 EasyPermissions的使用方法

从 Android 6.0(API 级别 23)开始,用户开始在应用运行时向其授予权限,而不是在应用安装时授予。系统权限分为两类:正常权限和危险权限: · 正常权限不会直接给用户隐私权带来风险。如果您的应用在其清单中列出了正常权限,系统将自动授予该权限。 · 危险权限会授予应用访问用户机密数据的权限。如果您的应用在其清单中列出了正常权限,系统将自动授予该权限。如果您列出了危险权限,则用户必须明

2017-06-23 14:55:14 4605 3

原创 Android 连续多次点击事件的实现

Android 连续多次点击事件的实现我们在开发中有时候需要做一些影藏的功能,例如:设置下的开发模式,需要连续点击5次后才会显示。 在这里分享一个网友实现的比较简单的,优雅的方式:public class MainActivity extends AppCompatActivity implements View.OnClickListener{ final static int COUN

2017-06-21 17:09:53 6128

原创 RecyclerView的基本用法

RecyclerView 是一个增强版的ListView,不仅可以实现和ListView同样的效果,还优化了ListView中存在的各种不足之处ResyslerView 能够实现横向滚动,这是ListView所不能实现的目前官方更加推荐使用RecyclerView.1.实现垂直方向的滚动在   dependencies 中添加库的引用dependencies { com

2017-04-05 17:21:11 68218 9

原创 百分比布局的使用

百分比布局可以让Relativelayout 和FrameLayout 来实现让;两个按钮按比例布局的效果。百分比布局是为FrameLayout和RelativeLayout进行了功能的扩展,提供了PercentRelativeLayout 和 PercentFramelayout这两个全新的布局。百分比布局属于新增布局,其定义在support库当中,我们在引用的时候需要在项目的bui

2017-04-05 11:34:30 1961

转载 Button的几种常用的xml背景,扁平化,下划线,边框包裹,以及按压效果

转载:http://blog.csdn.net/qq_26787115/article/details/53168515分享下我项目中用到的几种Button的效果,说实话,还真挺好看的一.标准圆角效果是这样的他的实现很简单,我们只需要两个参数,一个圆角的大小,一个颜色standard_button_bg.xml<?xml version="1.0" ...

2017-03-28 10:46:11 1726

原创 ListView 学习笔记

ListView用来显示一个列表的控件,在开发中经常用到,介绍一下常用的ListView的用法:根据列表的适配器类型,列表分为三种,ArrayAdapter,SimpleAdapter和 自定义Adapter(BaseAdapter):1:ArrayAdapter 最简单的一种用法,通常用来展示单一的字符数据public class MainActivity e

2017-03-23 17:43:07 298

原创 下拉列表 (Spinner)

Spinner提供了从一个数据集合中快速选择一项值的办法。有时有些数据是需要直接提供给用户,供用户选择,避免用户输入,从而提供一个下来列表。默认情况下Spinner显示的是当前选择的值。编码实现:1.实例化Spinner组件2.设置适配数组,供用户选择的数据3.设置监听  setOnItemSelectedListener  实现 onItemSelected 方法获取

2017-03-22 17:54:41 316

原创 Android:控件AutoCompleteTextView 和MultiAutoCompleteTextView的使用

AutoCompleteTextView    支持基本的自动完成功能,MultiAutoCompleteTextView 可支持选择多个值(在多次输入的情况下),分别用分隔符分开,并且在每个值选中的时候再次输入值时会自动去匹配 基本用法:public class MainActivity extends AppCompatActivity {

2017-03-22 16:10:40 374

转载 Android群英传笔记——第五章:Android Scroll分析

滑动事件算是Android比较常用的效果了,而且滑动事件他本身也是有许多的知识点,今天,我们就一起来耍耍Scroll吧一.滑动效果是如何产生的滑动一个View的本质其实就是移动一个View,改变其当钱所在的位置,他的原理和动画效果十分的相似,就是通过不断的改变View的坐标来实现这一效果,动态且不断的改变View的坐标,从而实现View跟随用户触摸滑动而滑动但是在讲

2016-11-28 11:45:21 271

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除