- 博客(24)
- 收藏
- 关注
原创 读《说服力PPT》总结
PPT是综合逻辑、美学、演讲的学问,但首先要以内容为根本。PPT设计思维:1、用别人喜欢的方法来讲他应该听的故事2、用别人喜欢的形式来晒他应该看的内容3、用别人喜欢的逻辑来串他应该懂的信息。错误可能有许多种,但都有共同的特点:杂、乱、繁、过我们的目标:齐、整、简、适...
2020-09-06 20:06:41
223
原创 代码就是注释
代码的可读性往往比加上若干累赘注释要好的多,以下一个简单的例子就能体现出来。以下只是简单示例,本文想要陈述的是逻辑性的代码要比完美的注释要好得多。不知读者是否能从以下代码中悟到。//submit orderprivate void btnSubmit_Click(object sender, EventArgs e){ if (id == -1) { Add(); } else { Edit(); }}privat
2020-07-14 20:21:29
351
原创 自定义RadioGroup实现TabLayout
先来看一下效果图:其实核心功能就两个:1、选中后改变字体颜色及加上下标2、事件回调实现思路:1、通过向RadioGroup中添加RadioButton实现Tab的填充2、通过设置设置特定属性去除选择按钮效果3、通过使用Selector控制RadioButton的字体及下标具体实现准备下标的drawable:<?xml version="1.0" encoding="ut...
2020-05-06 21:54:17
352
原创 ViewPager实现Fragment懒加载
通过在onPageChangeListener中调用懒加载,当Fragment切换到下一个或者切换中进行懒加载。1、先写一个接口原因:1、隔离具体实现(不依赖具体Fragment,否则在用的时候就需要一个一个对具体实现进行判断)2、仅处理需要懒加载的Fragmentpublic interface ILazyLoad { void lazyLoad();}2、实现接口这里...
2020-05-02 14:48:44
314
原创 所谓知识与经验
所谓知识与经验单纯的思想/知识只是招式,什么情景用什么招式则需要经验,思想/知识可以学习和参悟,但是如何运用的恰到好处,则需要在经验中积累。如何用有限的招式应对多变的场景则需要技巧,也就是所谓的以不变应万变的能力。所谓经验可以理解为审时度势的能力,这比所谓的知识/思想要更为核心。...
2020-04-03 16:47:07
306
原创 为什么发音要浊化(sp、st、sk)
发音浊化(sp、st、sk)为啥p、t、k前边跟上了s就要浊化呢?这又是谁规定的????(手写岳岳版我的天呐)?先搞几一个单词读一下,这里我们不浊化来慢慢的一个音一个音的读出来。spring /sprɪŋ/先看第一个音:s,它是一个往外吐气的音。再看第二个音:p,它是一个往外喷气的音。再看后边的音:riŋ,吐气也较为多。这里我们尝试慢点读出来这个单词(莫要浊化去读),就应该会明白为啥要浊化...
2020-03-24 20:50:48
16507
原创 英语中进行时态认知
什么是进行时简单来说就是:表示某一时刻,什么事情正在发生。举个栗子:小明敲门的时候我正在扫地。首先是时刻(小明敲门时),再就是发生的事情了,当然这个时刻的长短是主观化的。进行时的构成构成:be+doing。有人说这么简单的东西还要拿出来说吗,当然be+doing没什么好说的,值得思考的是为什么是这么构成的,为啥要用be,不用其它的,是英语随便拿来用的吗?貌似不是很严肃。英语是一个很具有逻辑推...
2020-03-08 21:28:39
319
原创 Java实现多线程分片文件下载
分片下载所谓分片下载就是要利用多线程的优势,将要下载的文件一块一块的分配到各个线程中去下载,这样就极大的提高了下载速度。技术难点并不能说是什么难点,只能说没接触过不知道罢了。1、如何请求才能拿到数据的特定部分,而非全部?可以在HTTP请求头中加入Range来标识数据的请求范围/区间,从HTTP/1.1开始可用。基本用法:Range: bytes=10-:取第10个字节及后所有数据。...
2020-03-08 21:27:43
3606
5
原创 FileProvider使用(拍照、安装APP、共享文件)
FileProvider在Android7.0及之后我们无法直接将一个FileUri共享给另一个程序进行使用。系统会抛出一个异常FileUriExposedException。官方是这样描述的:The exception that is thrown when an application exposes a file:// Uri to another app.当一个应用程序暴漏一个fil...
2019-12-21 09:57:13
3296
原创 一文看破接口抽象与工厂
前言以下我将通过一种全新的方式带你理解到底什么才是接口多态,很多人包括我在内刚学习这个东西的时候感觉无从下手,别人讲不明白,自己也搞不懂,只单纯的知道如何写接口,之后就再也没有用过。以下我将通过问题引入的方式来带你理解接口。首先你要知道一个概念的提出或者一个功能的引入一定是为了解决某个问题的。那么接口解决了什么问题,为什么它如此受推崇。以下我们先从生活中来理解它,逐步由现实到抽象。我希望以最为通...
2019-11-27 22:03:33
281
原创 Android6.0优雅权限请求封装
Android优雅权限请求封装先来看看不封装的情况下代码是如何写的,这里我们首先要判断是否存在特定的权限,如果存在才能进行特定操作,否则就要请求权限。最后请求的结果只能放在onRequestPermissionsResult中进行处理。这样写有几个不好的地方,第一就是你的判断逻辑是重复的,再者就是一旦有新的权限需要添加那么就需要修改onRequestPermissionsResult中的代码,根...
2019-09-21 14:59:50
181
原创 WinForm实现登录的正确姿势
前言登录可以说是一个比较常见的功能点,这里主要说的是登录成功后的跳转问题,我见过很多朋友在写的时候是直接把登录窗体隐藏掉然后将主窗体显示出来,这样虽然功能是实现了但是并不是很优雅,而且在主窗体关闭后还需要对登陆窗体进行手动的清理,否则整个程序进程并没有被关掉,也就造成了资源浪费。以下来分享一个较为优雅的方式来实现。错误写法这里我们在登录界面/窗体通过一系列验证后确认用户合法性,紧接着将登录...
2019-09-16 16:39:28
1135
原创 ContentProvider(内容提供器)概念篇
前言What is the key,when we learn something?先来拽一句英语,也就是说当我们学习一个技术点的时候,我们应该学习的是什么?我认为最应该学习的是它背后的思想以及逻辑。接下来我们就从概念上,或者说从更高的角度来看ContentProvider,它究竟是个什么鬼,体现了什么思想,有什么可以借鉴的。ContentProvider的作用Content provide...
2019-09-11 16:58:21
434
原创 以图搜图实现之均值哈希
前言最近在逛淘宝时发现了淘宝的图片搜索功能,可能是我太Low了这个技术点已经实现很长时间了。想想自己能不能实现这个功能,起初我是这么想的,对两张图片从左上角的第一个像素点一直比较到右下角的最后一个像素点,并在比较时记录它们的相似度,可能是我太天真了(主要还是知识限制了想象),这样做有很多问题,比如说两张图片大小不一致、核心要素点的位置不同等…最终只得借助网络了,找到了一种叫做均值哈希的算法(Av...
2019-09-08 09:38:31
629
原创 自定义View实现LinearLayout
上一篇:自定义View实现TextView自定义View实现LinearLayoutLinearLayout是我们常用的布局之一,下面我们通过继承ViewGroup来自己写一个具有纵向布局的LinearLayout。先来看效果图:onMeasure这里我们新建了一个类名为MyLinearLayout,其中我们重写了onMeasure函数用于处理当前View的大小。这里主要对第二部进...
2019-09-06 15:36:34
456
原创 C#/WinForm实现圆形进度条
CircledProgressBar一个简单的圆形进度条,通过简单的圆弧绘制来实现,实现了基本的大小适配、文字大小修改、颜色调整等功能。效果图自动适配属性说明1、FinsihedColor设置进度达到最大值后对勾的颜色2、TopColor设置已达成的进度条的颜色3、BottomColor设置底部整个进度条的颜色。4、Font设置进度值的显示字体5、ForeColor...
2019-08-31 09:48:36
3099
1
原创 Android中OptionMenu的使用总结
OptionMenu基本使用下图是一个基本的OptionMenu,基本使用是三个步骤:创建资源文件、重写onCreateOptionsMenu加载菜单、重写onOptionsItemSelected处理点击事件。Step1:创建资源文件上图图中的三个点是其他隐藏的菜单,以下我们成为折叠菜单。这里简单说一下showAsAction,它包含但不仅有以下几种:1、always表示无论标题栏...
2019-08-30 14:29:12
603
原创 名词可数不可数到底如何数——GeneralRule
前言我记着在学习英语语法的时候首先学的就是名词,最难以理解的就是这个可数和不可数了,当时学完整个人都懵了。脑子里浮现出若干问题:某些单词有时候可数有时候不可数,什么鬼?钱竟然是不可数的,我的天,瞬间刷新世界观,兜里就几毛钱手一摸就算出来了竟然不可数,难道老外数学都是体育老师教的吗。下边我将依次梳理并详细说明可数和不可数到底如何数。可数不可数到底怎么数其实这个问题还是要回到咱们博大精深的汉字...
2019-08-30 09:35:57
1659
原创 视图动画-View Animation
1、What is View Animation视图动画主要有两种:一、Tween Animation译为“补间动画”1、scale译为“规模、比例”,是对View进行特定范围的缩放2、alpha通过改变View的透明度实现View隐现的效果3、translate译为"转移",是对View进行位置的移动4、rotate译为“旋转”,是让View围绕特定的点进行旋转PS:所有View的...
2019-08-29 19:01:35
226
原创 浅析英语五大成分-主谓宾定状
浅析英语五大成分-主谓宾定状以下就我个人对英语的理解阐述英语中五大成分的基本概念,仅代表我个人看法。主谓宾在说主谓宾之前,我先来阐述一下我所认为的世界:我认为世界由事物及其相互作用组成。“事物”即客观的存在;而“相互作用”则是“事物”之间的互动,比如说打架、吵闹、学习等一些列动作组成了动态的世界。一个句子即是事物和事物之间发生的关系。我们的世界是一个动态的世界,所以会有动词。名次和名次通...
2019-08-29 18:59:01
1105
1
原创 自定义View实现TextView
自定义View实现TextViewTextView是我们常用的View之一,下面我们来自定义一个TextView,实现基本的TextView功能。以下不涉及基本的理论概念,概念篇参见上一篇文章。准备工作这里我们初始化了一些要用到的数据,其中有字体的颜色和大小以及文字内容的画笔。public class MyTextView extends View { private float ...
2019-08-29 16:52:35
259
原创 自定义View三大流程理论篇
自定义View三大流程理论篇以下介绍了自定义View的相关理论知识,具体实操见下一篇。自定义View理论篇之onMeasureMeasure是测量的意思,顾名思义这个函数主要是用来设置我们自定义的View大小的。或许你可能会疑惑:我们在Xml文件中不是定义了大小了吗,为什么还需要再次测量,我们的 layout_width和layout_height 参数是可以不用传递具体尺寸的,例如 wra...
2019-08-29 16:51:59
350
原创 自定义View理论篇之View基础结构
自定义View理论篇之View基础结构在学习一个东西的使用或者一项技能,首先就是要知道这个东西的出现解决的是什么问题,显而易见自定义View的出现就是系统自带的View不能满足我们的使用需求,我们需要根据自己所需来设计自己的view,也就是继承View类。View的分类View 主要分为两类:类别解释特点单一视图即一个View,如TextView不包含子View...
2019-08-29 16:50:29
262
原创 从源分析Handler、MessageQueue、Looper
前言很长的一段时间我一直在使用Handler,主要是在处理异步任务的时候来实现线程切换,不过对其原理和工作流程并没有详细的做过了解,以下我把从分析源码得到一些内容做出了一些总结。从源分析Handler/MessageQueue/Looper的工作流程首先来看下如下的示意图,图中描述的对象之间的基本通信。首先是Handler对象发送了一条Message,然后消息会被存放到一个列表(队列:Me...
2019-08-28 19:46:20
129
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人