自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(52)
  • 资源 (1)
  • 收藏
  • 关注

原创 自定义viewGroup一些总结

自定义flowlayout,TextView textview = new TextView();是包含child的padding。textview.setPadding(),里面传值的单位是px。

2023-04-28 08:49:35 64

原创 vue v-html 和 class 样式问题

你好

2023-04-23 13:30:34 185

原创 公众号开发

1.本地调试:打开微信开发者工具——》微信开发者工具选项——》更换开发模式——》公众号网页调试2.使用 http://127.0.0.1:8080 本地调试会 the permission value is offline verifying解决方法:先在输入框输入http://demo.open.weixin.qq.com/jssdk,再输入你之前的localhost本地http://127.0.0.1:8080 地址3.在苹果真机赏getTime()转换时间结果为NAN用到比对...

2022-02-17 10:49:29 8065

原创 《费曼学习法》读书笔记

确立你要学习目标理解你要学习的对象以教待学,用输出代替输入进行回顾和反思实现知识的简化和吸收

2021-06-18 10:26:46 438

原创 vue element 使用 oninput 方法 v-model 失效,没有值

有一个el-input 里面要做个输入过滤,输入中文后再输入数字反而提示没有数据之前是oninput=“value = value.indexof(XXXXXX)”v-model = ‘number’添加一项@blur ="number = Number($event.target.value)"可以解决

2021-05-26 11:48:38 926

原创 前端开发打印火狐兼容问题

最近开发遇到,亲测有效解决火狐浏览器的表格展示不全由于本人在学习前端开发以来一直使用的是谷歌浏览器,在前两天的代码提交过程中碰到了table表格的边框展示问题,在我这边是没有什么问题的,但是在我们老大那里却出现了table显示不全,然后就去百度这个问题,碰到了乱七八糟的解决方法,好多尝试后是不起作用的,最终在我的不断尝试下还是解决了。谷歌浏览器下的table样式内容如下:table{border-collapse:collapse}去掉这个属性然后改成下面这个就ok了border-spa

2021-05-21 09:11:26 255

原创 项目中dialogfragment 使用导致的Can not perform this action after onSaveInstanceState问题

最近接手一个项目维护,发现一个崩溃问题,使用场景是启动app时候有一个app内部更新弹框,用dialogfragment实现,强制更新的时候虚拟按键返回需要退出app,然后发现第一次启动app,弹框正常,第二次进入异常了,看奔溃分析应该是强制退出app导致activity异常触发了onSaveInstanceState。解决方法就是原来使用show方法替换为使用commitAllowingStateLoss方式,最近解决了问题...

2021-04-26 09:47:17 266

原创 笔记JVM —— 线程安全与锁优化

Java 语言中各种操作共享的数据分为:不可变,绝对线程安全,相对线程安全,线程兼容和线程对立保证对象行为不影响自己状态的途径,最简单的就是把对象中带有状态的变量声明为final线程安全的实现方法1.互斥同步2.非阻塞同步...

2020-08-09 10:47:36 111

原创 笔记JVM —— 垃圾收集器和内存分配策略

引用计数算法主流的Java虚拟机里面没有选用引用计数算法来管理内存,其中最主要的原因是它很难解决对象之间相互循环引用的问题。例如两个对象相互持有对方对象的一个字段的引用。可达性分析法通过一系列的称为“GC Roots”的对象作为起始点,从这些节点开始向下搜索,搜索走过的路径称为引用链,当一个对象到GC Roots 没有任何引用链相连时,则证明此对象是不可用的。java中,可作...

2020-08-02 21:54:10 80

原创 JVM笔记 —— Java内存模型和线程

衡量服务性能的高低,重要指标之一是每秒事务处理数,即一秒内服务端平均能响应的请求总数。主内存与工作内存Java内存模型的主要目标是定义程序中各个变量的访问规则,即在虚拟机中将变量存储到内存和从内存取出变量这样的底层细节。此处变量和Java编程中的变量有区别,它包括实例字段,静态字段和构成数组对象的元素,但不包括局部变量与方法参数,因为后者是线程私有的,不会被共享,所以不存在竞争问题。J...

2020-08-02 14:43:41 90

原创 笔记JVM —— 虚拟机字节码执行引擎

运行时栈帧结果栈帧是用于支持虚拟机进行方法调用和方法执行的数据结构,他是虚拟机运行时数据区中的虚拟机栈的栈元素。栈帧存储了方法的局部变量表,操作数栈,动态连接和方法返回地址信息等对于执行引擎来说,在活动线程中,只有位于栈顶的栈帧才是有效的,称为当前栈帧,与这个栈帧相关联的方法称为当前方法。局部变量表是一组变量值存储空间,用于存放方法参数和方法内部定义的局部变量局部变量表的容量以变量槽位最小单位。操作数栈是一个先入先出栈,32位数据类型所占的栈容量为1,64位...

2020-07-27 20:59:21 81

原创 JVM —— 虚拟机类加载机制(未完成)

虚拟机把描述类的数据从Class文件加载到内存,并对数据进行效验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制。类被加载到虚拟机内存中开始,到卸载出内存为止,他的整个生命周期包括:加载,验证,准备,解析,初始化,使用和卸载,其中验证,准备,解析三个部分统称为连接。解析阶段在某些情况下可以在初始化阶段后开始初始化的5种情况遇到new,getstatic,putstatic或invokestatic 这4跳字节码指令时 使用relfect包的方法对类.

2020-07-21 21:39:50 81

原创 Android Bitmap笔记

比较常用的缓冲策略LruCache和DiskLruCache通过BitmapFactory.Options key 可以按照一定的采样率来加载缩小后的图片,这样可以江都内存占用一定避免oom采样率 inSampleSize,为1时,采样后为图片原始大小,当大于1时采样后的图片宽/高均为原图大小的1/inSampleSize,像素为原图的1/(inSampleSize,的2次方),所占内存大小也为原图的1/(inSampleSize,的2次方),inSampleSize的取值总是2的指数,如果不是,那

2020-06-27 20:31:42 79

原创 Java 并发编程实战笔记(三)

在设计线程安全类的过程中,需要包含以下三个要素:找出构成对象状态的所有变量 找出约束状态变量的不变性条件 建立对象状态的并发访问管理策略如果在某个操作中包含有基于状态的先验条件,那么这个操作就称为依赖状态的操作将数据封装在对象内部,可以将数据的访问限制在对象的方法上,从而更容易确保线程在访问数据时总能持有正确的锁封闭机制更易于构造线程安全的类,因为当封闭类的状态时,在分析类的线程安全性时就无须检查整个程序如果一个类是由多个独立且线程安全的状态变量组成,并且在所有...

2020-06-17 22:04:31 73

原创 Java 并发编程实战笔记(二)

发布和逸出“发布”一个对象的意思是指,是对象能够在当前作用域之外的代码中使用。当某个不该发布的对象被发布时,这种情况就被称为逸出。

2020-06-16 22:13:02 86

原创 Java 并发编程实战笔记(一)

如果当多个线程访问同一个可变的状态变量是没有使用合适的同步,那么程序就会出现错误,有三种方式可以修复这个问题:不在线程之间共享该状态变量 将状态变量修饰为不可变的变量 在访问状态变量时使用同步当多个线程访问某个类时,不管运行时环境采用何种调度方式或者这些线程将如何交替执行,并且在主调代码中不需要任何额外的同步或协同,这个类能表现出正确的行为,那么就称这个类是线程安全的无状态对象是一定是线程安全的原子操作:对于访问同一个状态的所有操作(包括该操作本身)来说,这个操作是一个以原子方式执行的操作

2020-06-14 18:49:31 92

原创 Java 并发编程实战笔记(一)

Java内存模型JMM为程序中所有的操作定义了一个偏序关系:happnes-beforehappens-before 的规则包括:程序顺序规则。如果程序中操作A在在操作B之前,那么在线程A操作将在B操作之前执行监视器锁规则。在监视器锁上的解锁操作必须在同一个监视器锁上的加锁操作之前执行Volatile变量规则。对volatile变量的写入操作必须在对该变量的读操作之前执行线程启动规则。在线程上对Thread.start的调用必须在该线程中执行任何操作之前执行线程结束规则。线程中的

2020-06-14 15:33:11 106

原创 笔记JVM —— Class 类文件结构

任何一个Class文件都对应着唯一一个类或接口的定义信息,但反过来说,类或接口并不一定都得定义在文件里(可以通过类加载器直接生成)Class 文件是一组以8位字节为基础单位的二进制流,当遇到需要占用8位字节以上空间的数据项时,则会按照高位在前的方式分割成若干个8位字节进行存储Class 文件格式采用一种类似于C语言结构体系的伪结构来存储数据,这种伪结构中只有两种数据类型:无符号数和表。无符...

2020-02-24 20:52:38 249

原创 笔记 JVM ——java 内存区域

Java堆对大多数应用而言,Java堆是Java虚拟机 所管理的内存中最大的一块,Java堆是被所有线程共享的一块区域,在虚拟机启动时创建。此内存区域的唯一目的就是存放对象实例或数组,但并不一定是所有对象。Java堆是垃圾收集器管理的主要区域,因此很多时候也被称为“GC堆”,Java堆中可能划分出很多线程私有的分配缓冲区,目的是为了更好的回收内存,或更快的分配内存。如果堆中没有内存...

2020-02-17 21:49:58 105

原创 FragmentPagerAdapter 和FragmentStatePagerAdapter

因为最近开发遇到一个问题,做了一个搜索后,下面有多个分类结果多tab,多fragment的功能当我发现我传递的search值改变时,但是搜索的结果却没有改变,排查原因,发现这里的search其实已经发生改变但是这里获取的时候并没有变化原因在于FragmentPagerAdapter 和FragmentStatePagerAdapter上FragmentPagerAd...

2020-01-10 15:14:28 169

原创 记录一次retrofit https

今天我们正式环境需要换成https首先后台给我一个阿里云的压缩包,里面包含一个.pfx 和.txt的文件 .txt里面是密码我的做法:第一步,1、下载jar包,下载地址https://www.bouncycastle.org/download/bcprov-ext-jdk15on-154.jar2、将下载好的bcprov-ext-jdk15on-154.jar复制到%JDK_H...

2019-12-31 13:51:25 179

原创 开发中一些好用的库(待更新)

1.下拉刷新https://github.com/scwang90/SmartRefreshLayout2.仿微信查看大图https://github.com/iielse/ImageWatcher3.路由 Arouter4.选择图片库 matisee

2019-11-21 10:33:45 97

原创 开发小计

开发中一些常见的小问题:1.对于页面中有EditText 的控件,进入页面时不需要直接弹出键盘,在最外层父布局上设置android:focusable="true"android:focusableInTouchMode="true"2.对于一个布局,上一个布局用weight="1",最下面提交按钮这种可以设置android:windowSoftInputMode="adju...

2019-09-24 16:35:10 80

转载 使用Toolbar自定义布局时,设置match_parent 左右各有一段间距

解决方法:给Toolbar加上app:contentInsetStart”="0dp"(左侧)或者“app:contentInsetEnd”="0dp"(右侧)<android.support.v7.widget.Toolbar android:layout_width="match_parent" android:layout_height="?an...

2019-07-26 15:20:30 347 1

原创 记一个react-native开发中的坑

今天从git上 checkout 一个项目结果 react-native run-android的时候报了一个错误"* What went wrong:A problem occurred configuring project ': app'.> Could not resolve all dependencies for configuration ':app:_debug...

2019-05-24 17:06:58 549

原创 线程(二)笔记

Exchanger 实际可以看作一个同步点,两个线程在该同步点能够以线程安全的方式互换数据。如果两个线程的运行速度不同,则运行的较快的线程会被阻塞,直到运行较慢的线程赶到同步点之后,两个线程才可开始交换数据。如果要在线程间互发多组数据,可以使用blockingQueue接口,特点是:如果队列里没有可用空间,则插入操作会被阻塞,如果队列里没有可用数据,则删除操作会被阻塞。如果想要插入操作和删除一...

2019-05-02 18:55:17 95

原创 线程(一) 笔记

处理器核心线程数:RunTime.getRunTime().availableProcessors();计算程序所需线程的总数:线程数 = CPU可用核心数/(1-阻塞系数),其中阻塞系数的取值在0-1之间计算紧密型任务的阻塞系数为0,而IO密集型任务的阻塞系数接近1构建计算密集型并发应用的一些经验:子任务的划分数应不少于处理器核心数。 线程数多于处理器核心数对性能提升毫...

2019-04-29 22:15:56 185

原创 内存栅栏 笔记

简单来说,内存栅栏就是从本地或工作内存到主存之间的拷贝动作。仅当系操作线程先跨越内存栅栏而读线程后跨越内存栅栏的情况下,写操作线程所做的变更才对其他线程可见。关键字synchronized 和volatile都强制规定了所有的变更必须全局可见,该特性有助于跨越内存边界动作的发生,无论是有意为之还是无意。在程序运行过程中,所有的变更会先在寄存器或本地cache中完成,然后才会被拷贝到主存...

2019-04-29 19:55:08 158

原创 关于一个addview 开发问题的小计

最近开发通过addView 去动态加载 View的时候报了一个错代码是这样写的,结果报了异常The specified child already has a parent. You must call removeView() on the child's parent first.意思就是这个子view 已经有一个parent了,你需要先在这个子view的parent先将其移除...

2019-04-17 14:54:01 150

原创 kotlin 笔记(四)数组和集合 笔记

kotlin 的集合体系由三种集合组成List,Set,MapKotlin 创建数组大致有两种方式1.使用arrayOf(),arrayOfNulls(),emptyArray()2.使用Array()构造器arrayof()需要意思列出每个元素,例如arrayOf("a","b","c")arrayOfNulls() 需要知道数组长度,还需要使用泛型来指定数组类型,...

2019-04-10 22:06:44 246

原创 Python 学习笔记 之高级特性

1.切片使用场景一般是当需要取list或tuple 的区间索引值的时候例如:我们要取list的前三个数可以使用L[0:3] 数过是负数表示取倒数的第几个数如果从0开始取可以将0省略例如L[:3]同样对于tuple可以使用(1,2,3,4,5,6)[:3]对于字符串可以使用'ABCDEFG'[:3]操作结果仍是字符串2.迭代通过 for ... in 但是需要迭代对象,...

2019-04-04 15:46:56 78

原创 关于通过 设置 wampServer 让你的手机可以访问

最近参加了一个移动版H5 商城的开发,但是在开发过程中,有一样式问题需要在真机上查看,浏览器F12已经满足不了我其实设置过程很简单1.点击右键在Apche 下点击httpd.conf将这里的Require local 替换为 Require all granted 保存关闭,然后wamp 会提示你是否reload 选择是2.通过cmd ipconfig 查看你本地的ipv4地...

2019-03-28 10:50:56 1095 1

原创 webview shouldOverrideUrlLoading 学习笔记

今天看了一下关于shouldOverrideUrlLoading这个方法的返回值也尝试了一下1.如果你的webview 没有去设置setWebViewClient 的话,那么调用loadUrl的时候会让系统去处理,通常是手机浏览器去加载网页或启用选择对话框2.如果设置了setWebViewClient 的话,那么如果return true 那么这个时候是交给系统去处理,这个时候页面是白色的...

2019-03-22 10:01:23 390

原创 android 时间间隔笔记

Android开发中经常会遇到计算时间间隔的场景,java中提供了几种计算时间的方法:System.currentTimeMillis()和SystemClock.uptimeMillis()。关于currentTimeMillsSystem.currentTimeMillis() is the standard "wall" clock (time and date) expres...

2019-03-21 17:34:36 552

原创 android Handler 学习笔记

每个线程只能拥有一个looper ,一个Looper 可以绑定多个handlerMessageQueue的数据结构,是一个单向链表Handler 主要有 sendMessage() 和 post()两种方式使用方法:1 创建Handler类对象 private Handler mHandler = new Handler(){ ...

2019-03-21 17:04:36 80

原创 android View addView 笔记

addView 主要有这几个方法addView(View child) // child-被添加的ViewaddView(View child, int index) // index-被添加的View的索引addView(View child, int width, int height) // width,height被添加的View指定的宽高addView(View ...

2019-03-20 17:28:37 365

原创 android Viewpager PageTransformer 笔记

viewpager 滑动切换页面的时候可以实现各种有趣的效果主要通过ViewPager.PageTransformer这个类来实现例如:public class MyPagerTransFormer implements ViewPager.PageTransformer { @Override public void transformPage(View page, ...

2019-03-20 17:17:36 310

原创 android View 学习笔记

View 里我们常用的方法Creation(创建)Constructors(构造函数):有一种形式的构造函数会在View在代码中被创建时调用,另一种形式的构造函数会在View从layout加载出来时被调用。 第二种形式的构造函数会解析和应用layout文件中定义的任何属性。 onFinishInflate():该方法当View及其子View从XML文件中加载完成后会被调用。Layout...

2019-03-20 15:37:01 73

原创 ViewStub 学习笔记

通过源码学习源码我们可以看到;ViewStub 的构造函数,public ViewStub(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) { super(context); final TypedArray a = context.obtainStyledAttribute...

2019-03-20 11:07:41 112

原创 android 自定义Behavior 笔记

自定义Behavior 一般可以重写这些方法onInterceptTouchEvent():是否拦截触摸事件 onTouchEvent():处理触摸事件 layoutDependsOn():确定使用Behavior的View要依赖的View的类型 onDependentViewChanged():当被依赖的View状态改变时回调 onDependentViewRemoved():当被依...

2019-03-12 14:56:17 545

仿qq顶部下拉渐变

模仿手机qqAPP 空间顶部 下拉时 背景渐变效果(新人上传)

2015-09-29

空空如也

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

TA关注的人

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