- 博客(16)
- 问答 (4)
- 收藏
- 关注
原创 Daily Notes-2019.11.15
Daily Notes-2019.11.15Kotlin Related@JvmOverloads注解该自定义View,就是典型的在单参构造中调用二参构造,在二参构造中调用三参构造,并在三参构造中调用一个初始化方法的模板。最显著的特征是在参数中有了赋值运算符=,并有@JvmOverloads的注解这是可选参数的写法,即如果不传入attrs,则使用default的null赋值,de...
2019-11-15 16:39:14
186
转载 map和flatMap
map和flatMap运用flatMap的地方也是可以用map的,但是是有区别的。先看下map操作符的用法:ConnectionBase.getApiService2() .getStudents(101) .map(new Func1<Student>, Course>() { @Over
2017-03-22 22:49:17
1332
原创 android监听虚拟按键的显示与隐藏
虚拟按键在华为手机中大量存在,而虚拟按键的存在无疑增加了屏幕适配的难度,往往许多时候我们的界面需要根据虚拟按键的显示与否(虚拟按键的显示隐藏是用户可以动态调整的)来调整界面的ui显示,但android系统本身(似乎)并没有提供此类接口(PS:反正我没找到类似接口),经过研究得到一个可用的方式。 android手机界面分为SystemUi【包括status bar(状态栏)以及navigation
2017-02-16 17:52:54
14949
原创 git 的基本使用
Git 全局设置:git config –global user.name “wkable” git config –global user.email “kun0119870924@126.com”创建 git 仓库:mkdir Joopic cd Joopic git init【注释:初始化git】 touch README.md git add README.md【在commit之前
2017-02-06 11:46:58
328
转载 简单的基于LruCache的图片加载器
代码片段记录: 该代码段引用自google官方的support-v7 demo,是使用LruCache做的一个简单的二级缓存【disk/memory】的图片加载器——因为该ImageLoader是用来加载本地图片缩略图的,不涉及网络请求。package com.example.android.supportv7.graphics;import android.graphics.Bitmap;im
2017-01-10 15:02:47
371
原创 android中关于toolbar的使用
toolbar久闻其名,但项目中并没有实际使用过。toolbar代替actionbar主要是前者是一个viewGroup的控件,可以自由的定制ui,而后者是系统内置的系统级别的控件,只是提供了几个接口可以在已有的ui结构上实现用户自定义,扩展性太差。 要使用toolbar首先要在activity使用的style中修改样式, <item name="windowActionBar">false</i
2017-01-04 17:30:54
378
原创 关于java中的动态代理
首先引入两篇引子Android业务组件化之URL Scheme使用与Android业务组件化之现状分析与探讨。这两篇文章主要是介绍android中进行业务组件化处理的定义和实现方式,其中进行业务模块解耦后页面跳转方式中有一部分关于动态代理的内容,这才勾起了我对动态代理的兴趣。 关于动态代理的好处,我引用知乎上一个类似问题的回答: “主要用来做方法的增强,让你可以在不修改源码的情况下,增强一些方法
2016-12-27 20:55:36
441
原创 android中RecyclerView条目无法横向铺满的问题
该问题网上比较多的答案,都是要求修改inflate条目布局的方式,具体如下:View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.ble_result_item_unmatched, parent, false);关键在于parent不能传空. 假如使用LayoutInflater.from(parent.get
2016-11-18 18:40:04
6618
原创 android中gridView下拉刷新时item频繁刷新的问题
项目中gridview下拉刷新时出现了item频繁刷新的问题,item上加载的是图片.网上所搜的答案是代码中设置/给定gridview的高度,沿着这个思路走,的确解决了问题,不过也有一些自己的发现,记录下来. float itemWidth = (ResourceUtil.getWindowWidth() - ResourceUtil.dp2px(6 * 4)) / 3;
2016-10-27 11:38:41
1061
原创 android国际化的小总结
项目做了繁体中文和英语的国际化,有那么一点点的东西感觉可以记录下来. 如果将字符串资源用静态变量保存了下来,那么在程序运行的时候切换语言,这些字符串资源是不会改变的.比如: private static String test = context.getResources().getString(R.string.test);
2016-10-27 11:20:23
452
原创 ListView/RecyclerView的item中有进度条的处理
之所以特意提出是有进度条的情况,是因为进度条刷新的频率非常高,如果是在进度刷新的时候调用notifyDataSetChanged或者notifyItemChanged方法虽然可以实现刷新,但是界面会频繁的闪烁!所以这个时候最好的办法就是拿到要刷新的item的对应的控件,比如要刷新的进度条的引用。我的方法是这样的:以recyclerview为例。
2016-08-06 11:10:50
8401
原创 android中不依赖activity的dialog弹窗的实现
private void showUpdateSuccessDialog(){ final WindowManager wm = (WindowManager) AppContext.context.getSystemService(Context.WINDOW_SERVICE); WindowManager.LayoutParams para = new Window
2016-07-13 16:14:32
8524
1
原创 Android程序反编译-1
Android应用APK反编译本文使用的工具是apktool,其可以将APK文件还原为标准的android工程文件,而要想做到这点,大概需要两步:首先是将apktool.bat文件的路径注册到系统的环境变量中,这样就可以直接在cmd窗口下使用apktool.bat命令直接进行操作,而不必写文件的全路径;第二步是使用apktool.bat d destinationApkFilepath resolv
2015-11-28 23:44:15
358
转载 <学习笔记>java中运算符的英文表示
引自:http://www.cafeaulait.org/course/week2/03.htmlJava OperatorsAn operator is a symbol that operates on one or more arguments to produce a result. The Hello World program is so simple it doesn't
2015-10-14 21:47:39
1617
原创 <面试题>java基础知识易错点
1)关于a++与++a的辨析;以如下代码为例: int m2 = 4; int n2 = 5; // 使用&逻辑运算符: // if (m2++ > 4 & ++n2 > 5) {//m2++>4,大于号左边返回值为m2原值,本例中即4,所以左边为false; // m2++; // } // System.out.println(m2 + "---" + n2);/
2015-10-14 21:24:27
391
原创 <学习笔记>关于Hash集合以及Java中的内存泄漏
Hash集合主要有HashMap、HashTable以及HashSet,前两者的区别在于HashMap允许null值且unsynchronized,而最后一个为Set。Hash集合的特点在于其通过哈希算法在内存中存储以及检索元素。这么做的目的在于将分配给该集合的内存区域划分为若干份(bucket),然后通过hashCode方法为每一个集合元素获取一个哈希码,根据哈希码将元素存储于特定的内存区域,在
2015-10-11 21:26:12
1006
空空如也
Android AOSP源码编译问题
2017-09-05
android手机root的问题
2017-08-15
android studio使用gradle编译工程的时候一个问题
2017-07-05
关于ubuntu上安装android studio的问题
2016-03-03
TA创建的收藏夹 TA关注的收藏夹
TA关注的人