- 博客(49)
- 收藏
- 关注
原创 手机验证码输入控件
Android手机验证码输入控件git项目地址https://github.com/alphamu/PinEntryEditText
2020-06-04 20:04:00
387
原创 Android常用开源库记录
//标签布局com.hyman:flowlayout-lib//gif播放pl.droidsonroids.gif:android-gif-drawable//图片加载com.github.bumptech.glide:glide//svga动画com.github.yyued:SVGAPlayer-Android
2020-03-26 19:37:06
351
转载 Android精确判断是否为64位
private static boolean is64BitImpl() { try { if (Build.VERSION.SDK_INT // Android API 21之前不支持64位CPU return false; }
2017-09-05 10:19:07
3091
原创 Mac 下Android Studio2.3更新Gradle3.3踩坑记录
最近新入手mbp,小白用户各种问题。踩坑在安装Android Studio2.3最新版后,Gradle3.3构建项目时出现sync同步失败。 Failed to open zip file. Gradle’s dependency cache may be corrupt醒悟折腾了N久才醒悟过来,错误提示说zip包无法打开,也就是说gradle-3.3-all.zip包有可能损坏了。马上cd进去
2017-03-09 12:03:19
8610
1
转载 测量控件宽高
void measureChild(View child){ ViewGroup.LayoutParams params = child.getLayoutParams(); if(params == null){ params = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_P
2017-02-22 10:15:08
441
原创 PinnedSectionRecyclerView
本人在github做的开源项目, 基于recyclerview 改的,用于页面上下滑动时,顶部Section固定不动的效果PinnedSectionRecyclerViewListView StyleGridView styleDemo Gif
2017-02-21 14:45:19
1001
原创 Android Studio ButterKnife 使用记录
主要记录一下gradle的配置。当Module:app 引用 Module:library时,配置如下。app:build.gradledependencies { annotationProcessor 'com.jakewharton:butterknife-compiler:8.4.0' //缺少这条代码将导致apt无法生成xxx_ViewBinding.Class,程序将报Class N
2017-01-20 13:32:27
490
原创 Java Object对象中的wait,notify,notifyAll通俗理解
wait,notify,notifyAll 是定义在Object类的实例方法,用于控制线程状态。三个方法都必须在synchronized 同步关键字所限定的作用域中调用,否则会报错java.lang.IllegalMonitorStateException ,意思是因为没有同步,所以线程对对象锁的状态是不确定的,不能调用这些方法。wait 表示持有对象锁的线程A准备释放对象锁权限,释放cpu资源并
2016-12-30 18:33:48
12489
6
原创 JAVA synchronized关键字及对象锁通俗理解
synchronized:Java语言的关键字,当它用来修饰一个方法或者一段代码块的时候,能够保证在同一时刻最多只有一个线程执行该段代码。然而它的本质是对象锁,即同步的是对象,而不是同步代码。这里我将分为类跟类实例对象进行演示说明。针对Class对象锁package com.vk;import java.text.SimpleDateFormat;import java.util.Date;pub
2016-12-30 16:44:24
681
原创 题目:给最外层的rootview,把这个根视图下的全部button背景设置成红色,手写代码,不许用递归
题目:给最外层的rootview,把这个根视图下的全部button背景设置成红色,手写代码,不许用递归算法原理:Android的view视图是按树形结构分布,所以按树形结构遍历循环判断每一层的ViewGroup元素,将其入栈;否则判断当前view是否是Button类实例,是则改写背景色当前ViewGroup检查childView完成后,判断栈是否非空,取出栈顶元素ViewGroup重复步骤2直
2016-12-22 14:32:35
1926
原创 算法:给定整数型数组,要求去除重复元素形成新数组,并返回新数组长度
/** * * @author VK * @Date 2016-12-19 10:48 * @Decribe 给定一个整数型一维数组,去除重复元素形成新数组, * 并返回新数组长度。不额外分配数组空间 * */public class Demo { public static void main(String[] args) { int[] src = { 0,
2016-12-19 11:02:20
2061
原创 将两个有序的单向链表整合成一个有序单向链表
题目:将两个有序的单向链表整合成一个新的有序单向链表。以小到大有序基准的单向链表,算法原理: 1、取链表A,链表B 各自头节点进行比较,确定新链表的头节点。 2、若取的是链表A的节点,取出链表A该节点的下一节点与B链表当前节点比较,新链表的节点指向比较得出的小节点。 3、循环步骤2,直至链表A,B其中一个到达结尾,将新链表尾节点指向未到达结尾的链表当前节点,算法结束。将有序单向链表转向输出:
2016-12-14 23:26:52
1591
原创 单向链表
class Node { public Node next; public int val; public Node(int i) { this.val = i; }}/** * 单向链表 * * @author vk * @date 2016-10-31 21:10 */public class SingleLinkedList {
2016-11-01 18:06:01
229
原创 UC 笔试题记录
public class Parent { String name = "Parent"; Hello y = new Hello(name); static{ System.out.println("Parents static method"); } Parent(){ System.out.println("Parent
2016-10-28 01:54:59
386
原创 Android Studio 配合github管理项目
1. Android Studio中如何使用Git和Github来管理项目http://blog.csdn.net/wei18359100306/article/details/456451452. Github Readme 教程(Markdown)http://blog.csdn.net/kaitiren/article/details/385137153.Android 设备视频录制教程(
2016-10-21 16:37:50
319
原创 android 小知识
AndroidManifest.xml 中activity属性 <activity android:name=".AActivity" android:label="@string/title_activity_a" android:clearTaskOnLaunch="true" android:the
2016-10-21 16:29:26
249
原创 android touchEvent传递机制
@Override public boolean onInterceptTouchEvent(MotionEvent ev) { Log.v(tag,"-----"+getClass().getSimpleName()+" ,onInterceptTouchEvent: "+getStrAction(ev)); int action = ev.getActi
2016-10-13 11:33:35
314
原创 java byte数组与short数组互相转换
public static short[] toShortArray(byte[] src) { int count = src.length / 2; short[] dest = new short[count]; for (int i = 0; i < count; i++) { dest[i] = (short)
2016-10-11 10:43:04
18556
3
转载 Android Universal Image Loader 源码分析
1. 功能介绍1.1 Android Universal Image LoaderAndroid Universal Image Loader 是一个强大的、可高度定制的图片缓存,本文简称为UIL。简单的说 UIL 就做了一件事——获取图片并显示在相应的控件上。1.2 基本使用1.2.1 初始化添加完依赖后在Application或Activity中初始
2016-09-05 11:05:35
394
转载 android studio 在release打包时修改AndroidManifest.xml
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
2015-10-19 16:03:12
2549
原创 ant android打包时获取版本号
android项目打包时,往往需要使用到Androidmanifest.xml 里面的值,如本人在release打包时,希望文件名字自动带上versionName,那这时就需要antxmlproperty来帮忙了该脚本指令将Androidmanifest.xml读取并转换成相应的property,这样便可在ant脚本中随意调用了 build.xml文件中加入xmlprope
2015-07-10 18:28:37
1137
转载 android代码混淆发布版本时关闭log输出
代码混淆配置,发布release版本时关闭log输出-assumenosideeffects class android.util.Log { public static *** v(...); public static *** d(...); public static *** i(...); public static *** w(...);
2015-06-17 20:18:01
2842
转载 ant 基本知识
入门技术在学习struts+spring+hibernate,尤其是Appfuse的过程中大量涉及到ant的使用,因此我觉得有必要对ant做个比较深入的学习,以下是在学习过程中搜集的材料。比较详细,很适合没有接触过ant的初学者。Ant基本使用指南1 Ant是什么?Apache Ant 是一个基于 Java的生成工具。生成工具在软件开发中用来将源代码
2015-06-12 15:43:03
402
转载 [Android疑难杂症]动态改变Background后Padding无效的问题
前言在Layout中指定好background和padding以后,程序里面动态修改background之后padding就失效了,貌似是一个BUG,这里找到了一篇英文文章,简单翻译分享一下。声明 欢迎转载,但请保留文章原始出处:) 博客园:http://www.cnblogs.com 农民伯伯: http://over140.cnblo
2015-05-27 19:41:17
458
原创 Android TabActivity使用
Android TabActivity使用java代码:mTabHost = getTabHost();mTabHost.setup();mTabHost.addTab(mTabHost .newTabSpec("Home") .setIndicator(indicator1)
2015-05-21 20:59:43
350
转载 Java对象的强、软、弱和虚引用原理+结合ReferenceQueue对象构造Java对象的高速缓存器
1.Java对象的强、软、弱和虚引用在JDK 1.2以前的版本中,若一个对象不被任何变量引用,那么程序就无法再使用这个对象。也就是说,只有对象处于可触及(reachable)状态,程序才能使用它。这 就像在日常生活中,从商店购买了某样物品后,如果有用,就一直保留它,否则就把它扔到垃圾箱,由清洁工人收走。一般说来,如果物品已经被扔到垃圾箱,想再 把它捡回来使用就不可能了。
2015-05-06 15:57:13
414
原创 解决Fragment相关问题,java-lang-illegalstateexception-activity-has-been-destroyed
开发时代码设计如下:FragmentActivity包含一个Fragment A ,B,C, 该Fragment A 中包含一个Viewpager+FragmentPagerAdapter的组合,当在Fragment A,B,C中切换时,遇到遇到以下错误错误1:java.lang.IllegalStateException: Recursive entry to executePendingT
2015-04-02 15:06:53
14595
3
原创 android GridView setOnItemSelectedListener
android view 控件GridView 的监听器方法中setOnItemSelectedListener,是只在硬键盘中选中Grivew子item才会触发回调,即touch模式下无效。GridView.setSelection(pos),getSelectedItemPosition()均无效
2015-03-13 16:17:05
2959
1
原创 aes加密算法java代码实现
package com.vk.aesdemo;public class Aes {public enum KeySize{Bits128(4,10),Bits192(6,12),Bits256(8,14);/**以字为单位的种子密钥长度,16bytes=1word=128bits*/private int nk;/**轮密钥的次数*/private int
2015-02-13 18:08:39
5769
1
原创 android隐藏actionbar,全屏的两种实现方式
支持系统版本api 14以上,两种方式任选一种都可以隐藏Actionbar方式一(java代码): getActionBar().hide();方法二(xml配置): AndroidManifest.xml文件中,在 标签中加入元素android:theme="@android:style/Theme.NoTitleBar",将默认是应用内所有activity隐藏actionbar;
2015-02-04 18:04:40
5115
转载 Android--将布局保存成图像-转
//将布局转换为View类型对象 View view = getLayoutInflater().inflate(R.layout.main, null); //打开图像缓存 view.setDrawingCacheEnabled(true); //必须调用measure和layout方法才能成功保存可视组件的
2015-01-27 23:50:46
480
转载 Android不同手机屏幕分辨率自适应
有必要了解的 Android中常见的单位 dip, dp, px, sp之间的区别:dip: device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA、HVGA和QVGA 推荐使用这个,不依赖像素。px: pixels(像素). 不同设备显示效果相同,一般我们HVGA代表320x480像素,这个用的比较
2015-01-14 09:48:10
1014
原创 关于使用getDrawingCache()方法获取屏幕截图的问题
说到android的屏幕截图,一般都会用到getDrawingCache()获取视图缓存来sh
2014-08-11 15:11:31
7916
转载 Android开源框架ImageLoader 加载drawable 图片文件
"drawable://" + R.drawable.ic_launcher, // Image from drawables
2014-07-14 11:10:34
5668
原创 Conversion to Dalvik format failed with error 1 打包
关于Eclipse android Conversion to Dalvik format failed with error 1 打包
2014-05-04 14:14:24
461
原创 onDraw 中使用canvas画线
canvas.drawLine(getWidth(), 0, getWidth(), getHeight(), mPaint);startx=starty=getwidth(); 时,画不出线
2014-01-26 10:36:05
645
原创 xml布局里面使用自定义view中的内部view
android:id="@+id/np_numberpicker_input" android:layout_width="match_parent" android:layout_height="wrap_content" style="?attr/numberPickerInputTextStyle" />
2014-01-24 18:08:54
481
原创 setWillNotDraw 使用
If this view doesn't do any drawing on its own, set this flag to allow further optimizations. By default, this flag is not set on View, but could be set on some View subclasses such as ViewGroup. Typi
2014-01-19 16:33:57
672
转载 Java 完美判断中文字符
转自:http://www.micmiu.com/lang/java/java-check-chinese/Java判断一个字符串是否有中文一般情况是利用Unicode编码(CJK统一汉字的编码区间:0x4e00–0x9fbb)的正则来做判断,但是其实这个区间来判断中文不是非常精确,因为有些中文的标点符号比如:,。等等是不能识别的。// 根据
2013-08-13 11:41:50
729
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人