Android基础
H_shaohui
这个作者很懒,什么都没留下…
展开
-
android笔记--保存和恢复activity的状态数据
一般来说, 调用onPause()和onStop()方法后的activity实例仍然存在于内存中, activity的所有信息和状态数据不会消失, 当activity重新回到前台之后, 所有的改变都会得到保留. 但是当系统内存不足时, 调用onPause()和onStop()方法后的activity可能会被系统摧毁, 此时内存中就不会存有该activity的实例对象了. 如果之后这个activ转载 2016-05-10 10:10:20 · 503 阅读 · 0 评论 -
popupwindow的基本使用以及基本动画效果
1.在使用popupwindow的时候,遇到了一个bug,就是点击按钮要显示popupwinow的时候,设置了一个boolean值来判断当前是否第一次点击,如果是第一次点击就打开popupwindow。然后取非值关闭。但是如果这样设置的话,不知道为什么第一次打开和关闭就正常,等第二次要开开的时候,需要点击两次按钮才生效,关闭正常。开始以为是取值的判断有问题,打印出来后发现取值是没问题的。(现在原创 2017-01-18 16:58:15 · 620 阅读 · 0 评论 -
Android Studio的Gradle添加重复依赖的问题
Multiple dex files define Lcom/nineoldandroids/animation/Animator$AnimatorListener; 在Android Studio里build项目时不会报错,但是run项目的时候就会报上面的那个错误。这个问题纠结了我整整一天啊,虽然最终的确是解决了,然而到现在我还是没能完全弄懂原理。记录一下我解决这个问题的过程。首先,遇到原创 2017-01-19 11:25:57 · 430 阅读 · 0 评论 -
Android 如何收集已发布程序的崩溃信息
我们写程序的时候都希望能写出一个没有任何Bug的程序,期望在任何情况下都不会发生程序崩溃。不过理想是丰满的,现实是骨感的。没有一个程序员能保证自己写的程序绝对不会出现异常崩溃。特别是针对用户数达到几十万几百万的程序,当你用户数达到一定数量级后,就算你的程序出现个别异常崩溃情况也不用惊讶。既然我们写的程序都有可能发生异常崩溃,如果是还没发布的程序,我们可以通过测试抓取Log来分析。不转载 2017-01-29 20:46:57 · 2031 阅读 · 0 评论 -
android两种方式获取AsyncTask返回值
获取AsyncTask返回值,在Activity中使用。标签: 代码片段(4)[全屏查看所有代码]1. [代码][Java]代码 ?12345678910111213141516转载 2017-04-18 10:10:49 · 7861 阅读 · 0 评论 -
Android客户端判断服务器是否开启 HttpHostException解决方案
版权声明:本文为博主原创文章,未经博主允许不得转载。Android判断服务器是否开启,试了很多方法都不行(若server未开启会卡在HttpResponse那),有人说高版本的Android程序不允许在主线程中访问网络(主线程中可以读写网络流)有待于验证。(更正:不是说的不允许访问,而是很耗时,会假死(不耗时则不会假死);正解:当用户点击一个按钮时如果执行的是一个常耗时操作的话转载 2017-04-17 16:45:42 · 1280 阅读 · 0 评论 -
Activity 初始化性能优化
在Android 应用开发中,我们最关注的莫过于Activity的启动速度了.可以说启动速度的好坏一直是我们应用能否成功吸引用户的关键所在. 试想一个界面从点击入口到真正界面显示的过程,如果太长,用户将失去耐心,进而无情抛弃这个应用. 那么如何加快一个界面的显示速度呢?我们一般都会去研究Activity的初始化流程.实际上,如果我们新建一个Activity,在它的生命周期内什么都不干,那么他的转载 2017-04-18 15:04:44 · 759 阅读 · 0 评论 -
Android性能优化之Activity 泄漏
随着移动互联网的发展,android app开发越发火爆。大家都知道一个app的成功与否,与app的性能体验密不可分。如果一个app打开时间长、滑动不流畅等等,那么相信不管你的产品多么棒,运营多么牛叉,也不会获得用户的青睐。因此app的开发中,提升性能尤其重要。 当然,从事android开发的童鞋应该都知道app性能提升的重要性,但难点在于如何提升android转载 2017-04-18 17:16:46 · 447 阅读 · 0 评论 -
android 开源框架之——下拉刷新,上拉加载更多总结
版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]最近项目中需要用到下拉刷新的功能,发现自己的写的不是很好,网上搜了一下,发现开源的框架好多啊,而且类似的框架也有很多,不过也很杂,各有优缺点。在这里,我就总结一下比较常用的,争取全面一些,以后自己用起来,查看起来也方便些。下拉刷新1.Android-PullToRefresh转载 2017-04-19 15:18:41 · 5510 阅读 · 0 评论 -
简单的activity变成半透明的方法
在做项目时,常需要用到对话框之类的效果,然而对话框不容易写,所以就想写个半透明的Activity来代替对话框效果,这样的好处至少有三个:一:布局容易二:各种控件容易控制三:代码简练:不至于将控制对话框的代码写在一坨,各种控制也不用写在一坨,易于维护而现在在网上搜索半透明的Activity时,都是需要在style中写样式,在color中定义颜色,当然,最后还得在Mai转载 2017-04-17 16:23:32 · 881 阅读 · 0 评论 -
Activity左边滑出,右边滑入的动画切换
版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]Activity左边滑出,右边滑入的动画切换转载请注明出处:http://blog.csdn.net/u012301841/article/details/46920809大家都知道Android系统默认Activity间的动画切换效果为:左边滑出、右边滑入,按返回键的动转载 2017-05-03 17:13:25 · 2361 阅读 · 0 评论 -
OkHttp网络连接封装工具类
最近,临近春节放假,把自己最近项目中使用 的okhttp使用做个总结,将自己的工具类贡献出来。其中有部分是参考了鸿洋的部分。 就直接上代码。package com.lidong.demo.utils; import android.os.Handler; import android.os.Looper; import com.google.gson转载 2017-04-25 15:47:58 · 522 阅读 · 0 评论 -
【Android】ScrollView嵌套RecyclerView,RecyclerView总是把它上面的控件顶出页面
开始的时候没找到原因,还想进去的时候通过handler的形式把scrollview滚动到最上面就算了。后来在网上找到了这个一行代码就搞定的方法(只能默默佩服)。。。。。然后就转载了。。。哈哈ScrollView嵌套RecyclerView,当我离开当前页面,然后又回来时,RecyclerView就会把它上边的控件都挤出页面,它显示在页面最上边。原因应该是RecyclerVi转载 2017-01-16 20:15:43 · 477 阅读 · 0 评论 -
Android okHttp网络请求之Get/Post请求
前言: 之前项目中一直使用的Xutils开源框架,从xutils 2.1.5版本使用到最近的xutils 3.0,使用起来也是蛮方便的,只不过最近想着完善一下app中使用的开源框架,由于Xutils里面包含的东西相对来说比较杂,有数据库、图片缓存、注解、网络请求等等,秉着一个开源库只处理一件事的想法,决定逐步替换到Xutils,上网搜了一下比较好的开源框架,就找到了okHttp、转载 2017-01-10 19:52:19 · 402 阅读 · 0 评论 -
Android--(1)Activity组件的作用,如何创建Activity,如何启动Activity,以及Activity之间跳转的示例
(一)Activity组件: (1)作用: 显示用户的UI控件,监听UI控件的事件(和用户进行交互), 会影响Android应用进程状态(活动状态,前台状态,后台状态) (2)如何创建Activity,如何启动Activity?原创 2016-05-11 16:28:52 · 1561 阅读 · 0 评论 -
Android中的xml、json格式数据解析
转载请注明出处:http://blog.csdn.net/stevenhu_223/article/details/42520233 本博文相关的Demo下载链接:http://download.csdn.net/detail/stevenhu_223/8340451 前言:在开发Android第三方App应用的过程中,特别是涉及到网络请求的App,都会涉及到解析后台返回转载 2016-05-12 10:22:05 · 442 阅读 · 0 评论 -
Android中的xml、json格式数据解析
转载请注明出处:http://blog.csdn.net/stevenhu_223/article/details/42520233 本博文相关的Demo下载链接:http://download.csdn.net/detail/stevenhu_223/8340451 前言:在开发Android第三方App应用的过程中,特别是涉及到网络请求的App,都会涉及到解析后台返回转载 2016-08-07 16:53:54 · 972 阅读 · 0 评论 -
活动的最佳实践(知晓当前是在哪一个活动,随时随地退出程序,启动活动的最佳写法)
在正文之前,首先做好演示的准备工作。 1.首先建立一个项目,实现好图中文件的建立,代码会在接下来的实践中逐步讲解 2.然后在三个布局文件中分别添加一个Button,并分别一次命名为button1,button2,button3一.知晓当前是在哪一个活动 这个技巧将教会你,如何根据程序当前的界面就能判断出这是哪一个活动。可能你会觉得挺纳闷的,我自己写的代码怎么会不知道这是哪转载 2016-08-07 16:56:13 · 373 阅读 · 0 评论 -
Android studio 导入github工程
从github下载两个开源项目:PagerSlidingTabStrip | Android-Universal-Image-Loader-masterhttps://github.com/astuetz/PagerSlidingTabStrip https://github.com/nostra13/Android-Universal-Image-Loader转载 2016-12-16 10:06:46 · 613 阅读 · 0 评论 -
ButterKnife8.1.0(高版本)之后,使用插件失效原因分析
在引用的过程中有出现点击事件的使用没有效果,代码如下:原因是:用的是8.1.0的版本。ButterKnife从7.x到8.x后,运行时和编译器被分开来,你还需要配置 apt 'com.jakewharton:butterknife-compiler:8.1.0'所以需要在app文件夹下的build.gradle的文件夹下配置如下的代码:apply plu原创 2016-12-14 10:21:03 · 2796 阅读 · 0 评论 -
webview交互和缓存分析
该遍文章的webview与js的交互主要是,js调用到Android里的webview(在最后面附上源码)1.需要在网页版的js里写好要交互的函数接口,例如我现在要网页版那边给我传来一个地址,则在网页版的js写好:window.jump.XXX()的格式,jump也是可以自定义的。我这边的js需要调用的接口是:window.jump.gotoService(path);原创 2016-12-21 11:37:09 · 918 阅读 · 0 评论 -
webview加载网页加载不出来
1、webView.loadUrl(picTargetUrl); 写在最前面. 1、在无线城市迷你版的项目,用webview去loadUrl的时候出现加载的现象。 url 地址是 http://go.10086.cn/kuaixun.do 2、因为webview加入的网络请求的加载框,所以得在加入网络加载框 //设置webview的客原创 2016-12-21 11:55:59 · 6980 阅读 · 0 评论 -
浅谈Android中Callback(回调)的使用
今天Android项目的Bug基本修改完成了,于是就对自己还未了解的回调函数进行了学习。就得到的结果来看,个人觉得回调就像多态一样,比如Boss叫员工去吃饭,但每个员工可能吃不同的食物。只不过,回调是对接口而言。简单来说就是,A对象调用了自己的方法a,方法a接收的参数是B接口的实例b,而在方法a中将执行接口B中的方法c。这样解释可能有点绕不过来,下面我们来看一个例子。比如宿舍的某个同学设置原创 2016-12-15 11:28:17 · 4580 阅读 · 0 评论 -
Fragment的setUserVisibleHint方法实现懒加载,但setUserVisibleHint 不起作用?
我们在做应用开发的时候,一个Activity里面可能会以viewpager(或其他容器)与多个Fragment来组合使用,而如果每个fragment都需要去加载数据,或从本地加载,或从网络加载,那么在这个activity刚创建的时候就变成需要初始化大量资源。这样的结果,我们当然不会满意。那么,能不能做到当切换到这个fragment的时候,它才去初始化呢?答案就在Fragment里的setUse转载 2016-12-27 10:54:21 · 3162 阅读 · 0 评论 -
Android使用include无法调整位置的解决方法
在Android的layout样式定义中,可以使用xml文件方便的实现,有时候为了模块的复用,使用include标签可以达到此目的。例如:include layout="@layout/otherlayout">div> Android开发的官方网站的说明在这里。其中,有提到:Similarly, you can override all the layout par转载 2017-01-06 17:12:54 · 1141 阅读 · 0 评论 -
当Activity的launchMode设为singleTask的时候,你要注意了!
在开发一个电商APP应用的时候,为了不让activity多次创建,所以设置了 Android:launchMode="singleTask" 代码如下:[java] view plain copy print? android:name="com.sondon.mayi.activity.转载 2017-08-18 18:37:22 · 581 阅读 · 0 评论