自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 收藏
  • 关注

原创 别总用git merge了,Git高级操作之选择合并,git将一个分支的提交合并到另一个分支,git cherry-pick

当前需求:我现在有两个分支 A和B,这两个分支都同属于是一个项目,一个是新版本,一个是旧版本。而且差异化比较大现在产品下发了一个需求,需要在两个版本上同时发布进行,那么只能在一个版本上开发,并且由于两个版本差异化较大,不可能用git merge进行合并,这样就会合并不需要的代码,因为我只需要合并这一个需求的。所以我现在在A或者B分支上进行需求开发,然后提交开发的需求,然后只需要把新提交的代码合并到另一个分支就行了。git merge肯定不行,那么就会用到git的另一种方式git cherry-pi.

2020-11-27 10:19:46 1776

原创 kotlin data class 遇到的坑

我们都知道data class的用法,这里就不多累赘了。在 Kotlin 中,不需要自己动手去写一个 JavaBean,可以直接使用 DataClass,使用 DataClass 编译器会默默地帮我们生成以下函数equals()hashCode()toString()componentN()copy()data class 中的坑:由于 data class 被编译器生成 JavaBean 时,是一个 final 类,并且没有无参的构造函数,所以在使用过程非常不方便,但是我们可以利

2020-06-08 09:39:03 3418

原创 kotlin中的val 真的是只读吗?关于val 的一个细节

在我们开始学kotlin的时候,定义变量的时候,var是可变变量,val是只读变量,类似于java中final,但是在实际操作中,val的量真的是不可以改变的吗?对于基本变量而言,可读和不可变确实没什么区别,因为你无法去重写一个val变量,在这个时候的确是不可变的但是当变量是成员变量的时候,只读和不可变就是两种不同的类型了var和val最大的区别就是是否设置了get和set,我们都知道...

2020-04-21 17:06:12 1141 2

原创 Android RecyclerView只显示第一行

记录一个问题RecyclerView只显示第一行那么问题一定是出现把元素装入RecyclerView这个环节了,老实说自己找不到getCount那个函数,既然无法修改逻辑,那么我把其改成:装入item的时候无视父容器的逻辑行吗?故把adapter的OnCreateViewHolder函数改为如下(parent 改为 null): @Override public View...

2020-03-30 14:27:21 670 1

原创 AndroidManifest merger failed with multiple errors, see logs

在android开发的时候,有时候会遇到这样的问题Error:Executionfailedfortask':test:processDebugManifest'.>Manifestmergerfailedwithmultipleerrors,seelogs但是要命的是,除了这个log,没有什么其他的有用信息了,怎么办?处理方式是这样的:首先进入命令行,输入命令gradlewprocessD...

2020-03-30 14:24:04 277

原创 kotlin Anko的实际用法

学习kotlin,应该都多多少少的接触anko的用法什么是anko?其实就是颠覆了我们平常写布局的方式,如果你学习过flutter,那你应该了解flutter的布局方式,跟android最大的不同就是没有xml布局,那么anko同理,就是用代码更快、更方便的实现布局效果优点我们平常的android写法中,都是通过去解析xml来实现布局,但是使用了anko,就是可以通过代码实现布局的方式...

2019-10-30 16:51:01 1156

原创 Android中startActivities的准确用法

平常一直在使用startActivity做启动单个activity,但是最近发现了startActivities可以实现很多应用场景,比如点击通知可以用这个方法跳转两个activity,这样先进来就是需要展现的activity返回的时候就能跳转到启动页或者广告页,实现更好的场景交互那么具体是怎么实现的呢?其实要知道,这个方法就是启动多个activity,那么activity的启动方式又是怎么样...

2019-09-27 15:32:51 2549 1

原创 Android webview 常见的优化方案

对于WebView,我相信很多开发者最直观的莫过于:打开速度比原生慢。是的,当我们打开一个WebView页面,页面往往会加载很久,很久后才出现你所需要看到的页面。对于一个普通用户来讲,打开一个WebView通常会经历以下几个阶段:交互无反馈 到达新的页面,页面白屏 页面基本框架出现,但是没有数据;页面处于loading状态 出现所需的数据WebView初始化当App首次打开...

2019-08-20 14:20:02 1587

原创 kotlin 中关键字 lateinit

顾名思义,这是指一个延迟初始化的变量。在kotlin里面,如果在类型声明之后没有使用符号?,则表示该变量不会为null。但是这个时候会要求我们初始化一个值。有些时候,我们在声明变量的时候,并不能初始化这个变量。一个声明成lateinit的变量,如果在整个代码里面都没有进行任何的初始化,那么能否编译通过?如果你加上了lateinit关键字,kotlin的编译器不会做这种检查。如果你将变量声明为...

2019-04-10 18:32:18 15629

原创 Kotlin入门:中?和!!的区别

简单点就是? 表示当前对象是否可以为空!! 表示当前对象不为空的情况下执行当然上面这两句话可能比较难理解 下面做下简单的分析"?"加在变量名后,系统在任何情况不会报它的空指针异常。"!!"加在变量名后,如果对象为null,那么系统一定会报异常!ArrayList<String> myList = null; // 创建一个null的队列...

2019-04-10 18:27:25 925 1

原创 Kotlin入门:var和val的区别

Kotlin中有两个关键字定义变量var是一个可变变量,这是一个可以通过重新分配来更改为另一个值的变量。这种声明变量的方式和java中声明变量的方式一样。val是一个只读变量,这种声明变量的方式相当于java中的final变量。一个val创建的时候必须初始化,因为以后不能被改变。简单点就是 var 是可变的 val 是不可变的...

2019-04-10 18:20:06 455

原创 mysql 增删改查常用命令 收藏

MySQL:众多关系型数据库中的一种仓库 --数据库箱子 --表数据库:进入mysql 命令行: mysql -uroot -p查看所有数据库: show databases;创建数据库: create database niu charset utf8;删除数据库: drop database niu;选择数据库: use databases;查看所有表: show table...

2019-03-11 18:16:45 115

原创 Error:1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL

错误代码: 1064You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='订单'' at l...

2019-03-11 18:13:35 52141 2

原创 Svn主分支次分支合并和版本回退

1 svn 分支主干一直merge 失败的原因   因为分支是从另一个分支拉下来的  不是从主干拉下来的 所以一直合并失败 要想合并成功 必须分支要从主干拉下来2 svn 版本回退 直接根据网上的操作即可 (1)不丢失新建的文件,获得最新的SVN版本控制。TortoiseSVN-ShowLog-选中你要回滚的版本-右键-Export,之后将修改的文件覆盖到你的最新版本,commit即可。 ...

2018-12-28 16:04:16 2242

原创 Android动态权限之6.0以上及6.0以下动态权限申请遇到的问题

今天来记录一个问题,因为项目需要用到zxing,那就必须要用到摄像头,那么就需要动态的去申请权限,先贴个6.0以上的申请权限的代码 这个在网上随便搜一搜都有很多代码块 就不做过多的解释了 今天主要讨论的是在6.0以下遇到的一个问题 /** * 请求权限 6.0以上 */ @Override public void requestPermissionUpS...

2018-11-12 17:32:27 1098

原创 Android-volley浅谈-从源码去了解它为什么是Google推荐的网络请求框架

今天想总结的是Volley这个网络请求框架,虽然volley论火爆程度比不上okhttp和retrofit 这两个,并且在日常使用的过程中可能很少有人能去深究为什么volley是Google 所推荐的网络框架,不管从使用还是从源码去理解,我觉得volley都是一款值得去深究 去学习的框架volley的gayhub地址  https://github.com/google/volley写在下...

2018-11-02 10:58:10 400

原创 Android-我所了解的Glide的源码-优雅的图片加载框架

摘要网上GLide的源码分析文章太多了,以至于我自己看的时候都不知道从哪看,最近正好有时间整理一下文档。首先要肯定的一点是,我必须承认,Glide源码我没读完,相比较volley等框架的源码,Glide的源码在我看来更是一个极其复杂的设计,虽然它的使用时很简单,但背后的工作确实不简单,我的这篇博客更多的是展示我自己对Glide这个框架的理解,可能会有问题,希望多多指正。对于Glide源码,我更...

2018-10-31 17:57:13 810

原创 Android-内存不足导致了Fragment的主Activity销毁Fragment显示重叠

案列现在很多项目的首页功能都是用一个Activity去加载多个Fragment去显示切换内容,列如微信的首页就是这样实现的,然后通过调研show和hide方法对Fragment进行显示隐藏操作,以此达到显切换识图。但现在在笔者的实际项目中遇到了一个问题,当内存不足的时候,宿主Activity就会被销毁,但是Fragment还是被缓存下来了,关于Fragment的缓存可以看这位博主的文章ht...

2018-10-31 14:43:56 2035

原创 Android系列Viewpager+Fragment 优化之懒加载(预加载)的实现

今天项目中有个页面就是用的viewpager+fragment ,我正好入职看到了有些缺陷没有做懒加载,所以就把代码优化了一下,在这里正好做个记录首先关于viewpage+fragmentr的实现方式网上和实际项目中都有很多demo和示例使用,我在这篇文章中就不多阐述,不明白怎么使用的同学可以先去了解下这种结合使用方式,再来了解这篇文章的优化方式 好了 废话不多说 直接开干!!! 懒加...

2018-10-30 11:56:48 7077 1

原创 浅谈-Android之MVP模式,用实际项目理解MVP

最近跳槽了一家新公司,也打算开始写一些博客记录一下自己Android方面的知识点,还有工作中的点点滴滴,以便于自己知识积累,再跳槽的时候可以更好地系统的复习这些知识点今天带来的就是现在项目中常见的MVP模式MVP这个模式很早前就开始推行在各大项目中,虽然现在很多大项目上了Mvvm+DataBinding这种模式,但是mvp还是很值得使用和借鉴的至于什么是mvp?网上已经一大堆解释这...

2018-10-29 14:35:40 420 1

空空如也

空空如也

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

TA关注的人

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