学习点滴
小西米米lxtx
一直在制造问题和解决问题的过程中无法自拔。 加油。
展开
-
设计模式 之 MVP
MVP(Model-View-Presenter) 是MVC模式的一个演变他们的主要目的都是划分模块职责,降低模块耦合,易测试,提高代码复用如图目录结构Model: 负责数据的检索,持久化等操作(就是对数据的操作,下载 查找等)View: 负责UI的绘制和用户的交互 (界面的展示和更新)Presenter: 作为Model和View原创 2017-04-06 19:44:04 · 421 阅读 · 0 评论 -
java.lang.IllegalStateException: The specified child already has a parent. 异常处理
先看异常: java.lang.IllegalStateException: The specified child already has a parent. You must call removeView() on the child’s parent first.我在使用alertdialog 时,通过 setview 方法来给alertdialog设置view 如下代码:new Al原创 2017-09-27 16:06:20 · 713 阅读 · 3 评论 -
教你如何转载CSDN博客~~~
目录(?)[+]前言实现小结 前言 对于喜欢逛CSDN的人来说,看别人的博客确实能够对自己有不小的提高,有时候看到特别好的博客想转载下载,但是不能一个字一个字的敲了,这时候我们就想快速转载别人的博客,把别人的博客移到自己的空间里面,当然有人会说我们可以收藏博客啊,就不需要转载,(⊙o⊙)… 也对。。实现 因为我自己当初想转载的时候却不知道该怎么转载,所以学会了之转载 2017-10-09 16:22:03 · 281 阅读 · 0 评论 -
图片加载框架哪家强?
图片加载几乎是任何 Android 项目中必备的需求,而图片加载的开源库也越来越多,我们姑且在 GitHub 上搜索下 android image 关键字,出来的前五个按照 Star 数排序的项目如下: 可以看到前四个是大家比较熟知的图片加载库,有 UniversalImageLoader、Picasso、Fresco、Glide,至于第五个 ion 其实是一个网络库,只不过也提供了图转载 2017-10-09 16:29:11 · 312 阅读 · 0 评论 -
Activity Intent Flags及Task相关属性
学习Activity的四种启动模式的时候,已经了解到一些关于task的技术,今天我再向大家介绍一下。task是一个具有栈结构的容器,可以放置多个Activity实例。启动一个应用,系统就会为之创建一个task,来放置根Activity;默认情况下,一个Activity启动另一个Activity时,两个Activity是放置在同一个task中的,后者被压入前者所在的task栈,当用户按下后退键,后者从原创 2017-09-22 14:46:02 · 342 阅读 · 0 评论 -
android studio签名文件,以及查看MD5和SHA1信息
1.签名文件在哪: C:\Users\Administrator\.android \debug.keystore2.怎样查看获取SHA1或者MD5: (1)打开命令窗口:进入c盘的.android目录下 (2)输入命令:keytool -v -list -keystore debug.keystore (3)输入debug.keystore文转载 2017-10-11 14:49:52 · 526 阅读 · 0 评论 -
Android ------context 详解
还不能转载引用 那就奉上链接把 哈哈哈哈https://mp.weixin.qq.com/s/ETA6wHJ2JeOBfQbXgAmbyA?client=tim&ptlang=2052&ADUIN=364206318&ADSESSION=1510878442&ADTAG=CLIENT.QQ.5537_.0&ADPUBNO=26752原创 2017-11-17 10:26:34 · 329 阅读 · 0 评论 -
fragment 中使用 Toast经常报空指针的原因与解决
在fragment中使用Toast是用的非常多的,但是总是频繁的报空指针Toast.makeText(getActivity(), "click", Toast.LENGTH_SHORT).show();原因只是因为getActivity()很容易为null,因为fragment里有一个initstate方法,在activity被替换掉的时候mActivity便赋值给了null ,而这个方法会在re原创 2017-11-13 16:26:53 · 1377 阅读 · 0 评论 -
android 高级之旅 (十八) 性能优化
Android的性能优化方法介绍一些有效的性能优化方法,主要内容包括布局优化,绘制优化,内存泄漏优化,响应速度优化,Listview,bitmap优化,线程优化一 、 布局优化布局优化思想很简单,主要是减少布局层级。布局层级少了就意味着Android的绘制时的工作量少了。尽量删除不必要的空间和层级,有选择性的使用性能较低的ViewGroup,比如RelativeLayout。如果布局中既可...原创 2019-01-03 18:34:47 · 246 阅读 · 0 评论 -
Android性能优化 之 布局优化
(参自https://www.androidos.net.cn/codebook/AndroidRoad/android/advance/performance-optimization.md)关于布局优化的思想很简单,就是尽量减少布局文件的层级。这个道理很浅显,布局中的层级少了,就意味着Android绘制时的工作量少了,那么程序的性能自然就提高了。如何进行布局优化?①删除布局中无用的控件和...原创 2019-02-18 20:32:28 · 621 阅读 · 0 评论 -
Retrofit + rxAndroid 不讲废话的基本使用方法
本文直接切入主题,只记录retrofit+rxandroid 的最基本的使用方法.给初学者的建议是:不提倡直接开始了解retrofit+rxandroid的结合使用,应该分开了解每一部分的知识,了解两个部分的用法之后再进行结合.分享出两篇优秀的博客地址想先了解RxJava点这里想先了解Retrofit点这里正文以Androidstudio为例:导入依赖//网络请求 ...原创 2019-06-05 17:40:00 · 368 阅读 · 0 评论 -
RuntimeException : Didn't find class on path: DexPathList
今天遇到一个坑,接了个辞职同事的烂摊子,在我的电脑上他的项目就是装不上我的手机,多方寻找原因,mmp,最后解决方法居然是这样。。。工程报如下类似异常,找不到 某某类路径… RuntimeException : Didn’t find class on path: DexPathList Installation failed with message Invalid File: F:\YJZF原创 2017-08-30 10:40:20 · 2376 阅读 · 0 评论 -
给recyclerview的item添加点击事件的 一种方法
recyclerview虽然比listview要好,但是有好处的东西总是有坏处的 ,比如,recyclerview就没有对item点击事件的监听方法,之提供了一个onItemTouchListener,使用onItemTouchListener也可以实现对item点击事件的监听,但是其中需要重写ontouchevent等方法,个人觉得不如我接下来的方法好:先看效果图 首先,因为官方没有提供给我们i原创 2017-06-28 09:46:18 · 6919 阅读 · 4 评论 -
关于android framework层 学习记录
首先 Android的四层架构 :Linux2.6内核层,核心库层,应用框架层,应用层 今天重点学习 framework 应用框架层。Framework层为我们开发应用程序提供了非常多的API,我们通过调用特殊的API构造我们的APP,满足我们业务上的需求。今天详细讲讲framework在整个Android架构中的定位和作用。Activity Manager用原创 2017-04-09 14:30:49 · 701 阅读 · 0 评论 -
Android 之 Handler 知识摘要
这里 handler的概念就不做介绍,若还不知道handler是啥的同学请移步。首先说下handler messager looper之间的关系:looper: 一个线程只有一个looper对象,looper对象用以管理该线程中的MessageQueue (消息队列)handler:handler 用以和looper沟通(push消息到MQ队列中,或者接受looper从消息队列中取出的原创 2017-04-13 13:12:05 · 298 阅读 · 0 评论 -
Android 之 子线程中创建子线程以及子线程中toast 问题
最近学习handler时,碰到一个自觉得有意思的问题,有人说:“new Thread(run(){ //第1层子线程new Thread(run(//第2层子线程new Thread(run(){//第3层子线程}).start()) ).start()}).start()我想知道子线程套用子线程会有什么情况 我感觉后面的应该叫孙线程 曾孙线程”关于这个问题 我们需要明白一个点,以上这原创 2017-04-13 14:22:27 · 729 阅读 · 0 评论 -
Android之捕获TextView超链接
今天分享一篇捕获TextView超链接的文章,希望对大家有所帮助。这个捕获TextView超链接应该算是比较常用吧,如果你会了,就不用看了,如果还不会,可以看一眼,非常简单。捕获TextView超链接这个意思就是在一段文字当中如果有超链接的网址在当中,在TextView中会特别显示,和其它文字颜色不一样,还可以点击执行相应的操作。效果图如下: 具体代码如下: tv = (TextView)原创 2017-06-28 20:53:46 · 409 阅读 · 0 评论 -
内存溢出和内存泄露的区别
内存溢出 out of memory,是指程序在申请内存时,没有足够的内存空间供其使用,出现out of memory;比如申请了一个integer,但给它存了long才能存下的数,那就是内存溢出。内存泄露 memory leak,是指程序在申请内存后,无法释放已申请的内存空间,一次内存泄露危害可以忽略,但内存泄露堆积后果很严重,无论多少内存,迟早会被占光。memory leak会最终会导致out原创 2017-06-20 15:30:43 · 301 阅读 · 0 评论 -
picasso 源码解析
picasso的使用//加载一张图片Picasso.with(this).load("url").placeholder(R.mipmap.ic_default).into(imageView);//加载一张图片并设置一个回调接口Picasso.with(this).load("url").placeholder(R.mipmap.ic_default).into(imageView, new原创 2017-06-30 17:20:41 · 452 阅读 · 0 评论 -
Android中需要手动关闭的地方总结
Android中需要手动关闭的地方在安卓开发中我们都知道,内存申请了就要释放,对象创建了就要回收,初级工程师或者说新手往往在 打开/申请 完某个资源之后,忘记手动关闭,而java和android提供的虚拟机往往不是什么都会自动回收的,当比如网络和文件的io流、Bluetooth、GPS、Cursor,线程等,这时如果不手动回收资源,就会造成系统资源浪费。new 在activity中原创 2017-06-20 10:22:13 · 880 阅读 · 0 评论 -
Android:JNI 与 NDK到底是什么?(含实例教学)
前言在Android开发中,使用 NDK开发的需求正逐渐增大 但很多人却搞不懂 JNI 与 NDK 到底是怎么回事 今天,我将先介绍JNI 与 NDK & 之间的区别,手把手进行 NDK的使用教学,希望你们会喜欢 目录 目录1. JNI介绍1.1 简介定义:Java Native Interface,即 Java本地接口 作用: 使得Java 与 本地其他类型语言(如C、C++)交互即在转载 2017-06-22 20:38:28 · 499 阅读 · 0 评论 -
java 垃圾回收机制
内存回收机制: 内存回收就是释放掉在内存中已经没用的对象。 首先,要判断怎样的对象是没用的对象。这里有2种方法:1.采用标记计数的方法: 给内存中的对象给打上标记,对象被引用一次,计数就加1,引用被释放了,计数就减一,当这个计数为0的时候,这个对象就可以被回收了。当然,这也就引发了一个问题:循环引用的对象是无法被识别出来并且被回收的。所以就有了第二种方法: 2.采用根搜索算法: 从一个根出原创 2017-07-13 10:37:38 · 309 阅读 · 0 评论 -
总结一些优秀的第三方库(持续更新)
一些基于Glide的优秀库1.glide-transformations一个基于Glide的transformation库,拥有裁剪,着色,模糊,滤镜等多种转换效果,赞的不行不行的~~2.GlidePalette一个可以在Glide加载时很方便使用Palette的库。3.BoomMenu带弹出动画和各种高度自定义的菜单工具...原创 2019-06-18 16:57:04 · 277 阅读 · 0 评论