上一页 1 ··· 35 36 37 38 39 40 41 42 43 ··· 63 下一页
  2020年11月20日
摘要: 原因:没有设置默认启动的Activity,只需要在AndroidStudio做一下简单设置就行了。 第一步: 第二步: . OK,大功告成了 阅读全文
posted @ 2020-11-20 10:45 飘杨...... 阅读(424) 评论(0) 推荐(0) 编辑
  2020年11月6日
摘要: 一、概述&效果图 项目上有一个需求根据不同的图片个数展示不同的的布局样式,且图片个数不能超过四个。要说起来手动写也挺方便的,就是代码看起来比较臃肿,考虑了两秒决定用自定义布局试实现 思路: 1.让布局继承ViewGroup 2.利用ViewGroup测量自己以及测量子View的宽高 3.根据宽高在l 阅读全文
posted @ 2020-11-06 18:02 飘杨...... 阅读(889) 评论(0) 推荐(0) 编辑
  2020年10月13日
摘要: 一、概述 今天UI给提了一个bug,说分割线的宽度有问题。必须要求线的高度为0.5px。但是layout_height只允许输入整数。想通过直接设置View高度的办法宣告凉凉的。 然后突然想到Android绘图工具上可以把线的宽度设置成任意的。哎,还别说,这个办法还真行 二、原理 自定义一View, 阅读全文
posted @ 2020-10-13 19:13 飘杨...... 阅读(693) 评论(0) 推荐(0) 编辑
  2020年9月24日
摘要: 一、问题描述 昨天测试的同学说华为P20,Android10的系统无法调用微信小程序支付,但是却可以调用起微信支付,这个奇怪的现象。 二、产生原因 最后发现产生这个现象的原因是Android10系统加强对用户权限控制导致的。因为Android10系统增加了从后台弹出Activity的限制。需要开权限 阅读全文
posted @ 2020-09-24 09:27 飘杨...... 阅读(1108) 评论(0) 推荐(0) 编辑
  2020年6月1日
摘要: 一、概述: 目前主流的app一般都会使用到的TabLayout。现在的app设计一般都是定制,定制就意味着个性化。而google提供的tablayout有时候并不能满足我们的需求,还需要用代码一点点的写,这样不仅耗费时间出错率也会更加很多。因此决定封装一些通用的TabLayout来加快这种个性化的t 阅读全文
posted @ 2020-06-01 11:03 飘杨...... 阅读(1948) 评论(0) 推荐(0) 编辑
  2020年3月21日
摘要: 一、概述 在之前的一篇文章中,我们用反射实现了ButterKnife。但使用反射实现ButterKnife性能会受损。这一节我们使用AnnotationProcessor来实现一个ButterKnife(仅实现bindView作参考),在代码编译之前生成辅助类来帮助我们去掉繁琐的findViewBy 阅读全文
posted @ 2020-03-21 23:49 飘杨...... 阅读(1212) 评论(0) 推荐(0) 编辑
  2020年3月20日
摘要: 一、概述 当前开发一个Android项目必定会用到gradle插件(不管你想不想其实都在用)。上一节我们说了app的打包流程,其实主要是为接下来要说的内容做铺垫。打包流程大致分为:aapt把资源文件生成R.java文件,JavaCompiler把java文件编译成class文件,dex工具又把cla 阅读全文
posted @ 2020-03-20 00:35 飘杨...... 阅读(2391) 评论(1) 推荐(1) 编辑
  2020年3月19日
摘要: 一、概述 什么是App的打包流程? 答:App的打包流程是指通过把资源(图片、文本)、源代码等资源打包成一个apk的过程。 了解打包流程能干什么事情? 通过了解打包流程我们可以对app打包的过程进行干涉,例如:1.在热更新项目中我们可以干涉R.java中资源id的生成来防止宿主App和插件App资源 阅读全文
posted @ 2020-03-19 16:42 飘杨...... 阅读(2082) 评论(0) 推荐(0) 编辑
  2020年3月16日
摘要: 一、概述 Android的消息机制是指Handler的运行机制,Handler的运行需要底层的MessageQueue和Looper的支撑。我们在开发中使用Handler一般是切换线程更新UI等操作。因为Android规范规定Android只能在主线程中更新UI,这一点可以在ViewRootIml的 阅读全文
posted @ 2020-03-16 23:09 飘杨...... 阅读(413) 评论(0) 推荐(0) 编辑
摘要: 一、概述 简单点来说ThreadLocal其实是一个数据存储类,通过get(),和set(key)来实现对数据的存取。并且可以在指定的线程中存储取数据,而在这个线程中存储的数据对于其他线程是访问不到的。 什么情况下比较适合使用ThreadLocal来存取数据? 答:当数据的作用域是线程或者不同的线程 阅读全文
posted @ 2020-03-16 12:29 飘杨...... 阅读(179) 评论(0) 推荐(0) 编辑
上一页 1 ··· 35 36 37 38 39 40 41 42 43 ··· 63 下一页