- 博客(28)
- 资源 (1)
- 收藏
- 关注
原创 事件分发
#问题:1.自定义View的基础知识View ViewGroup对Ev处理的方法Ev传递流向View.setOntouchListener onTouch 执行顺序与View onTouchEvent() 的优先点击事件OnClickListener onclick与onTouchEvent()的关系...
2019-01-07 16:14:13 158
原创 。。。。。。。。。。
年底找工作 岗位有点少 感慨是经济不行 还是年底的原因。打着边面试边复习的想法 被现实狠狠的打脸了 你来面试面试官默认你已经准备好了。想想自己 也很少总觉复习知识 好多有印象却说不出来或说的不够快准 并不能达到面试官的认可,就像考试一下 需要复习下 感觉面试的时候有些问题并不能答上来 可以延伸的去讲下或把思考过程说下也比回答不知道好点。基于自己收藏的网址和平常零零散散的笔记 复习下吧 泪目。...
2018-12-18 16:06:20 160
原创 有关组件化
平时大多数的项目都是模块化但随着项目的迭代 代码可能越来越臃肿编译一次可能耗时5分钟甚至以上,且代码耦合越来越严重 组件化是一个解决如上问题的好方案。组件化应该具备什么特性呢1.UI路由。 不同module之间可以相互跳转,通过Uri(例:BlockChain://app/input/email?type=1)去实现跳转,类似H5跳转原生应用也是拦截Url通过这种方法实现跳转 路由框...
2018-12-14 17:55:13 228
原创 View 测绘流程
以setContentView() 为入口了解View的测绘 Activity Window WindowManager DecorView WindowManagerImpl RootViewImpl等(基于Android 8.1.0)。 public void setContentView(@LayoutRes int layoutResID) { //获取窗口...
2018-12-13 16:48:11 214
原创 有关Thread
ThreadsetDaemon 设置守护进程线程分为守护线程 和用户线程;当所用用户线程结束时,守护线程也随之结束;需在线程启动前调用。Thread.yield() 线程让步让出CPU使用权 让线程达到就绪状态 与其他线程共同竞争CPU 优先级高的线程不一定一定先执行。做出让步的线程 亦有可能重新执行。Thread.join() 等待当前线程执行完 再接下去执行 可...
2018-12-12 10:36:02 189
原创 Mac bash 常用命令行
ls 查看文件夹下所有文件-l 列出所有内容例:ls -ltotal 8----r--r-- 1 apple staff 50 6 26 11:47 1.java文件权限 连接数 所有者名字 文件组名称 大小 上次修改时间 文件名pwd 查看当前终端目录所在位置 cd 进入文件夹cd .. 返回上级目录cd ~ 进入当前用户根的目录cd ./ 进入根目录...
2018-12-11 17:48:47 1101
原创 MessageQueue Handler Looper
从Handler.sendMessage() 为入口 了解下具体工作原理和注意事项发送无延时的消息 public final boolean sendMessage(Message msg) { return sendMessageDelayed(msg, 0); }SystemClock.uptimeMills() 是获取开机启动到现在的时间 ...
2018-12-11 11:50:24 162
原创 Android Studio 上传库至Bintary JCenter 流程
注册账号 地址:https://bintray.com/ 可用第三方登录(github)在个人资料里找到API Key 保存下,之后上传有用新建 Maven Repositor 和Package在项目 root gradle 添加插件classpath 'com.novoda:bintray-release:0.8.0'novoda 是个第三方库 更简洁 地址:https://github.c...
2018-04-20 18:04:17 423
原创 Mac 下最简洁的切换JDK方法
场景: 升级Android Studio至3.1 build 4.4, 上传jcenter时 gradle jdk novoda库 各种相互冲突。过程中 下载了多个JDK版本,如何快速切换 让人蛋疼 ?个人认为最简洁的切换方式:open ~/.bash_profile 打开环境配置配置JDK9 和JDK8 默认JDK8export JAVA_9_HOME=/Library/Java/Java...
2018-04-20 16:51:36 555
原创 Android 相互唤醒 广播
广播是观察者模式。3.1之前 静态注册了系统广播的应用 关闭了之后还可以收到。 3.1之后不行。因为intent这两个flag FLAG_INCLUDE_STOPPED_PACKAGES(包含已经停止的包) FLAG_EXCLUDE_STOPPED_PACKAGES 。BAT 相互唤醒 互相监听了特定的广播 。参考:http://www.cnblogs.com/lwbqqyumid
2017-01-19 21:34:19 1669
原创 serialVersionUID的作用
之前把cookie序列化存在SP,app升级一次之后 就取不出来了.就是因为没有对该对象指定serialVersionUID.如果不指定serialVersionUID dvm 会自动分配一个,前后两次apk编译得到的serialVersionUID就会不同 抛出java.io.InvalidClassException。显式地定义serialVersionUID有两种用途:1) 在某些场合,希望类
2016-12-15 21:11:28 205
原创 去除进入闪屏页的黑屏或白屏
启动app 进入的默认页 是闪屏页 当activity 没有执行到setcontentview(),方法时 展现的都是窗口背景。 所以可以自定义style 单独给闪屏页设置主题 窗口背景就是闪屏也背景图片 如: <style name="AppLauncher"parent="Theme.AppCompat.Light.NoActionBar"> <item name="an
2016-12-12 23:05:11 466
原创 3--查找二维数组包含的数字
/** * 在一个二维数组中,每一行都按照从左往右递增的顺序排列,每一列都按照从上到下递增的顺序排列。 * 请完成一个函数,输入这样的一个二维数组和整数,判断数组中是否存在该整数 * * 可从左下角(向上递减向右递增)或右上角(向下递增向左递减)开始查找 可将O(m*n)降为 O(max(m,n)) */ public static boo
2016-11-16 23:45:07 257
原创 剑指offer ---实现Singleton模式
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
2016-11-16 22:27:12 327
转载 HashMap 总结
原文地址:http://www.cnblogs.com/John-Chen/p/4375046.htmlHASHMAP总结 最近朋友推荐的一个很好的工作,又是面了2轮没通过,已经是好几次朋友内推没过了,觉得挺对不住朋友的。面试反馈有一方面是有些方面理解思考的还不够,平时也是项目进度比较紧,有些方面赶进度时没有理解清楚的后面接着做新需求没时间或者给忘了。以后还是得抽时间深入
2016-08-19 15:45:44 610
原创 Android 透明状态栏了解使用 及SystemBarTint 解读
正确区分 沉浸式全屏 和透明状态栏沉浸式全屏模式:隐藏status bar(状态栏)使屏幕全屏,让Activity接收所有的(整个屏幕的)触摸事件。透明化系统状态栏:透明化系统状态栏,使得布局侵入系统栏的后面,必须启用fitsSystemWindows属性来调整布局才不至于被系统栏覆盖。基于SystemBarTint 设置透明状态栏的步骤及核心代码1.Android
2016-05-03 16:30:03 557
转载 Java 如何有效地避免OOM:善于利用软引用和弱引用
原文地址 http://www.cnblogs.com/dolphin0520/p/3784171.html一.了解 强引用、软引用、弱引用、虚引用的概念 在Java中,虽然不需要程序员手动去管理对象的生命周期,但是如果希望某些对象具备一定的生命周期的话(比如内存不足时JVM就会自动回收某些对象从而避免OutOfMemory的错误)就需要用到软引用和弱引用了。
2016-04-11 16:35:50 451
原创 Bitmap 优化与相关知识整理
Bitmap图片占用内存计算:Bitmap图片在加载到内存的时候是按照:宽*高*像素点位数来计算的。你可以把图片看成是由width行、height列的矩阵组成,每一个矩阵元素代表一个像素点,每一个像素点都是1byte整数倍的数据,这个数据越大,表示的色彩就越丰富,图片的显示质量就越高。Bitmap中有一个枚举类Config用来配置图片的压缩格式,代表每个像素是用多大的数据来存储的,数值越大能够
2016-04-07 17:10:08 280
原创 欢迎使用CSDN-markdown编辑器
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
2016-03-29 14:31:07 351
原创 ExpandableListView的使用和扩展
示例演示:1. 系统自带的ExpandableListView使用: 分为GroupView 和ChildView 数据存储结构示例:List ,Map> 取消系统自带箭头 可在子项中 加入全部这样字段 自定义适配器,继承BaseExpandableListAdapter 类似ListView的 BaseAdapter .在infalte GroupView 时
2016-02-20 16:55:22 341
原创 Win 10 下安装Genymotion和CirtualBox 教程
原来系统是Win7 升级了Win10 之后模拟器就用不了 折腾了半天 终于弄好了 写个教程记录下:官网下载地址:https://www.genymotion.com/#!/download 下载带virtual box EXE文件直接安装就行了 安装完成之后 修改以下两个地方:1.点击管理- 全局设定-网络-仅主机(Host-Only)网络 修改下图两个地方
2015-12-20 15:14:11 651
转载 获取LayoutInflater的三种方法
在实际开发中LayoutInflater这个类还是非常有用的,它的作用类似于findViewById()。不同点是LayoutInflater是用来找res/layout/下的xml布局文件,并且实例化;而findViewById()是找xml布局文件下的具体widget控件(如Button、TextView等)。 具体作用:1、对于一个没有被载入或者想要动态载入的界面,都需要使用Layo
2015-12-18 16:34:24 254
转载 Listview 和RecycleView的异同
在我的一篇介绍Android新控件RecyclerView的博客( Android L新控件RecyclerView简介 )中,一个读者留言说RecyclerView跟ListView之间好像没有什么不同,我觉得这是一个好问题,应该明确地区分一下两者的睯,所以我就研究了一下它俩之间的区别,然后也对两者的使用有了更加深入的了解。Android是一个不断进化的平台,Android 5.0的v7
2015-12-17 10:53:32 1511
原创 slideview 侧滑时上下滚动 onitemclick和滑动的冲突 解决方法
初学android不久 第一次写博客 记录下。如果有错误 请提醒,万分感谢slideview原文地址:http://blog.csdn.net/singwhatiwanna/article/details/17515543
2015-12-10 16:20:17 595
转载 scrollview和listview 冲突 动态定listview高度
public class MainActivity extends Activity { private ListView listView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceS
2015-09-17 16:05:29 429
转载 Android 中Activity,Window和View之间的关系
Activity是Android应用程序的载体,允许用户在其上创建一个用户界面,并提供用户处理事件的API,如 onKeyEvent, onTouchEvent等。 并维护应用程序的生命周期。Activity本身是个庞大的载体,可以理解成是应用程序的载体,如果木有Activity,android应用将无法运 行。也可以理解成 android应用程序的入口。Acivity的实例对象由系统维护。系统服
2015-09-15 10:13:55 279
转载 google推出的SwipeRefreshLayout下拉刷新用法
SwipeRefreshLayout是Google在support v4 19.1版本的library更新的一个下拉刷新组件,实现刷新效果更方便。使用如下:1.先下载android-support-v4.jar最新版本,之前的版本是没有SwipeRefreshLayout下拉刷新控件的,如果已经更新,此步骤可省略。2.在xml文件中引用android.support
2015-07-02 20:51:09 236
转载 Android按钮单击事件的四种常用写法总结
<Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Button1" /> <Button android:id="@+id/button2" andro
2015-03-17 19:35:25 371
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人