移动开发

Android:exported 属性知识

1、android:exported 是 Android中的四大组件 Activity,Service,Provider,Receiver 四大组件中都会有的一个属性。 2、android:exported 代表是否能被其他应用隐式调用。 3、true允许被启动,false不允许被启动。 4、android:exported 默认值是由有无intent-filter决定的,如果有intent-fi

微信小程序引导用户添加小程序动画页

1、实现效果 guideFollow.gif 2.实现原理 2.1 动画效果 css动画:animation animation: name duration timing-function delay iteration-count direction fill-mode play-state; 设置上面三段内容不同的动画时长,最后一段文字动画时长最长。 .show_box .

List并发线程安全问题

一、发现并发问题 1.1 测试代码 public class Client { public static void main(String[] args) { List<Integer> list = new ArrayList<>(); new Thread(() -> { for (int i =

Android10.0 锁屏分析——KeyguardPINView PIN锁分析

学习笔记: PIN 解锁流程跟Android10.0 锁屏分析——KeyguardPatternView图案锁分析一样,这里就不过多讲解了。 在这里主要分析下 PIN 键盘的按钮事件。 1. 确认按钮 // KeyguardPinBasedInputView.java @Override protected void onFinishInflate() { // 省略部分

ES6+ 数组方法

1 、concat() 数组、字符串合并。 let a = [1,2,3] let b = [4,5,6] a.concat(b) // [1, 2, 3, 4, 5, 6] let c = 'hello ' let d = 'world' c.concat(d) // 'hello world' 2、 at() 数组、字符串、类数组中添加.at()方法at()支持正索引和负索引,获取其指定位

对象及日期

Date日期 日期对象的定义(使用new关键词) 1、获取当前的时间(本地的时间) var date=new Date()//不传参 获取当前的时间 2、获取指定的时间 var date=new Date(123456)//一个参数毫秒值 将这个毫秒值加上对应的1970.1.1 0:0:0 var date=new Date('2000/1/1 00:00:00')//指定一个字符串 来指定对

iOS Runtime之KVC

Runtime系列导读 iOS Runtime之方法查找 iOS Runtime之方法替换 iOS Runtime之KVO iOS Runtime之KVC iOS Runtime之反射调用 简介 KVC是Key Value Coding的缩写,意思是键值编码。 在iOS中,提供了一种方法通过使用属性的名称(也就是Key)来间接访问对象属性的方法,这个方法可以不通过getter/setter方法

【建议收藏】17个XML布局小技巧

前言 我们开发时接触最多的就是xml布局了,还记得我们写Android的第一个Hello World吗,就是通过activity_main.xml显示出来的。 虽然xml写的很多,而且也没有什么技术难度,但是,这也往往是我们最容易忽略的地方,写xml不难,写出好的xml还是得下点功夫了。 什么算是好的xml布局呢,我认为核心有两点,一个是提升开发效率,另一个是提升app性能。围绕着这两点,我也精心

不可错过的一些 js小技巧

1. 获取指定范围内的随机整数: function getRandom(min, max) { return Math.floor(Math.random() * (max - min + 1)) + min; } 2. 打乱数组顺序 let arr:[31,2,3,'排序','😄'] arr = arr.sort(() => 0.5 - Math.random()) // [ 3

swift Equatable

我来了,swift 定义 用于做值类型对比的协议。 适用范围 遵循Equatable的类型都可以使用==或是!=符号对比判断。这个类型包括struct/class/enum 实现原理 任何遵循Equatable的类型,都需要实现方法static func ==(lhs: Self, rhs: Self) -> Bool在这个方法内按照指定的值和值间对比关系返回true或是false,外部