- 博客(8)
- 资源 (8)
- 收藏
- 关注
原创 Linux 设置NDK的环境变量
已配置NDK的环境变量为例:打开配置文件:gedit ~/.bashrc #在打开的文件末尾添加如下内容NDK=/opt/android-ndk-r10dexport NDK 执行生效source ~/.bashrc检查是否成功:echo $NDK 成功会输出路径的 ...
2018-08-17 15:50:44 1219
原创 卡特兰数公式
公式: C(2n,n)/(n+1) 问题:若一序列进栈顺序为e1,e2,e3,e4,e5,问存在多少种可能的出栈序列 答案:42f(0) = 1f(5) = 42f(5)=C(10,5)/6 = (10*9*8*7*6)/(5*4*3*2*1) / 6 = 42...
2018-08-14 16:19:37 9325 1
原创 android Builder模式
public class UserInfo { private String name; private String height; private int age; private int year; public String getName() { return name; } public String get...
2018-08-13 16:37:27 237
原创 java 强引用 / 弱引用 / 软引用 / 虚引用
强引用:当内存空间不足,Java虚拟机宁愿抛出OutOfMemoryError错误,使程序异常终止,也不会靠随意回收具有强引用的对象来解决内存不足的问题。是最常用的引用,例如:Object object = new Object(); 软引用(SoftReference):内存空间足够,垃圾回收器就不会回收它,如果内存空间不足了,就会回收这些对象的内存。应用场景:软引用通常用来...
2018-08-13 15:40:07 98
原创 实现跨进程间的Ui添加更新和显示
AIDL的定义aidl是Android interface definition Language 的英文缩写,意思Android 接口定义语言。 使用aidl可以帮助我们发布以及调用远程服务,实现跨进程通信。 将服务的aidl放到对应的src目录,工程的gen目录会生成相应的接口类 RemoteViews执行流程:RemoteViews通过Binder传递至System...
2018-08-10 16:58:38 452
原创 导航栏随滑动透明变化及悬浮重点讲述
效果显示:随着滑动设置顶部标题栏透明,主要是在滑动监听里面做操作: mScrollView.setListener(new CompatibleScrollView.ScrollViewListener() { @Override public void onScrollChanged(View v, int x, int y, int...
2018-08-08 15:01:51 699
原创 避免过度绘制的解决方法
检测过度绘制:进入设置 -> 开发者选项 -> 调试GPU过度绘制 -> 显示GPU过度绘制提示色值:真实对比: 蓝色,淡绿,淡红,深红代表了4种不同程度的Overdraw情况,蓝色: 意味着overdraw 1倍。像素绘制了两次。大片的蓝色还是可以接受的(若整个窗口是蓝色的,可以摆脱一层)。 绿色: 意味着overdraw 2倍。像素绘制了三次。中等大小的绿色...
2018-08-07 16:48:45 359
原创 ViewPager真正做到自适应高度
ViewPager控件,我以前的做法都是直接写死高度,这个对于做广告滚动图的还可以,因为高度都是16:9,写死也没关系。但是对于显示那些动态数据列表,这明显已经不满足需求了。其他大部分控件的的自适应都是用这个wrap_content属性就可以搞定,但是对于ViewPager来说没有效果,不设置高度就不显示处理,我想到的解决办法就是重写onMeasure方法。原理是:获取子控件的高度用于重新...
2018-08-03 10:17:00 8890 13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人