Android
peidonghui
这个作者很懒,什么都没留下…
展开
-
android进程回收
Caveats and ConsiderationsWhile we talked about process priorities in terms of components such as what activities and services you have, keep in mind that these priorities are done at the process leve转载 2017-07-16 16:02:34 · 368 阅读 · 0 评论 -
Android总结Listview的notifyDataSetChanged与setSelection冲突
1 Android的listview,如果改变了adapter中的数据,使用notifyDataSetChanged方法通知listview,这时如果立刻执行setSelection方法,其定位会有问题,因为notifyDataSetChanged方法中只是一个通知,其真正的更新操作可能不能立即完成,对setSelection有影响;2 在listview中的headerview中增加动画,这原创 2015-06-18 14:42:08 · 3096 阅读 · 1 评论 -
Android中Application的onCreate多次调用问题
1 问题描述:一个android应用需要为一个service单独开一个进程以完成与服务器交互的逻辑,同时在Application对象的onCreate方法中会执行对象的初始化操作,最主要的是有一个轮询线程,经测试发现,应用耗电十分严重。经过测试发现,是service的进程中也跑着那个轮询线程,这样在网络环境不好的情况下,频繁的请求网络激活设备,会损耗大量的电量;2 问题原因:每个and原创 2015-05-27 11:22:47 · 14402 阅读 · 0 评论 -
Android总结之Activity启动模式
我们都知道Activity的启动模式有四种,分别为standard(默认)、singleTop、singleTask、singleInstance四种,对于这四种模式的基本说明,这里就不再赘言。今天总结的是这四种启动模式对Activity的onActivityResult以及onNewIntent两个机制的影响。首先说下对四种启动模式的理解,四种启动模式对应不同的复用级别,原创 2015-03-16 16:22:15 · 714 阅读 · 0 评论 -
Android总结之ImageView的scaleType属性
Android中ImageView的scaleType有8个可选项1 matrix不对图片进行缩放,对原图从view的左上角绘制图片(图片不变形);2 fitXY将图片全部绘制到view中,但是图片会变形;(图片变形,充满view)3 fitStart、fitCenter、fitEnd三个属性会选择图片的较长的边为基准对图片进行缩放处理,正因为如此,图片不会完全充满view,不同之原创 2015-03-17 17:53:53 · 2746 阅读 · 0 评论 -
Android监听软件盘弹起及高度
通过view的onSizeChange方法实现对android软件盘状态监听demo地址:https://github.com/donghuipei/AndoridDemos如有更好解决方案,希望多多交流!原创 2015-01-13 11:58:10 · 2167 阅读 · 0 评论 -
Android进阶练习 - 高效显示Bitmap(管理Bitmap内存)
管理Bitmap内存除了在前面几篇文章中提到的缓存图片的步骤外,还有一些事情需要做来促进垃圾回收和位图的重用。Android目标版本决定了我们将使用什么策略。 先来看看Android不同版本对Bitmap管理的进化 在Android2.2或更低的版本中,当出现垃圾回收时,你的应用会暂停执行。这会导致延迟,降低程序性能。Android2.3增加了转载 2014-06-19 15:59:34 · 498 阅读 · 0 评论 -
Android中Selector的使用
在AndroidManifest.xml文件中的android:windowSoftInputMode属性使用原创 2014-06-18 13:53:53 · 575 阅读 · 0 评论 -
Android:windowSoftInputMode属性
在AndroidManifest.xml文件中的android:windowSoftInputMode属性使用 "stateUnchanged", "stateHidden", "stateAlwaysHidden", "stateV原创 2014-06-18 12:13:59 · 583 阅读 · 0 评论 -
Android的Activity的launchMode与onActivityResult方法的关系
记下来,免得以后忘了,再去网上找。Android的Activity有四种启动模式,分别是standard、singleTop、singleTask、singleInstance。测试发现,不同的模式下onActivityResult的调用时机不同:1 在standard、singleTop两个模式下,onActivityResult方法会在当前的Activity结束掉之后被调用原创 2013-07-10 16:37:07 · 5743 阅读 · 0 评论 -
Android里面的匿名类与匿名内部类使用
在android开发中经常碰到匿名类(和匿名内部类)的使用,那么匿名类和一般情况下使用的类有什么不同,从实现的功能来讲是一样的,但是使用匿名更加简洁方便,形式上有点像new一个接口或类的感觉,但是我们必须记住接口是不可以new出来的(实例化),我们要在内部重写需要的接口的方法,这样就new出了一个实现接口方法的对象,但是这个对象的类名不可见,所以叫做匿名类。下面是功能相同的两段代码,分别用上述两种转载 2012-12-05 09:52:22 · 2669 阅读 · 0 评论 -
android中关于scrollview内部组件android:layout_height="fill_parent"无效的解决办法 .
今天在调整布局时遇到一个奇怪的问题,在scrollview下加入的组件无论如何也不能自动扩展到屏幕高度,最后对布局文件进行简化,最终得到最简layout配置内容如下:01. 02. 03. 04.<ScrollView android:layout_width="fill_parent" android:id="@+id/scrollView1" 05. x转载 2012-11-13 17:03:46 · 944 阅读 · 0 评论 -
Android笔记-系统的复制粘贴功能及注意事项
1 关于Android系统的复制粘贴功能通过为TextView设置android:textIsSelectable="true"即可使用系统的复制粘贴功能,但是存在以下问题:问题1:系统的复制粘贴功能使用的ActionBar,若果App隐藏了ActionBar,那么当使用复制粘贴功能时,会显示ActionBar,这样会导致页面大小改变,从而可能会使view失去焦点,导致不能使用复制粘贴功能原创 2015-06-18 10:59:59 · 3797 阅读 · 0 评论 -
android总结之ScrollView与RelativeLayout和LinearLayout同时使用时问题总结
Android的界面布局中为我们提供了ScrollView组件,即当页面的信息过多而超过屏幕时,产生滑动效果来查看页面内容,但是使用时需要注意几点:1,ScrollView一般与LinearLayout同时使用,之前不明原因,现在好像明白原因了,之所以使用LinearLayout是因为LinearLayout本身的特性,LinearLayout会根据组件来扩展自身的高度,这样在使用Scroll原创 2013-01-14 19:07:28 · 23692 阅读 · 2 评论 -
Android中webview js与native方法互相调用
android webview允许js与native方法互相调用,基本的调用方法不再赘述,有个比较特殊的场景,记录一下:已经有一个完整的h5页面,现在要将该页面集成到app中,但是有部分h5页面中的逻辑需要使用本地方法实现;如果不想修改h5,可以通过如下方法:1 首先,在客户端写一段js代码,该js与h5中的js名称参数一致,目的是使用本地的js代码覆盖掉h5页面中原有的代码;2原创 2016-06-12 14:51:23 · 2615 阅读 · 0 评论 -
Android点击事件的分发
1,android中点击事件分发主要涉及三个方法:dispatchTouchEvent、onInterceptTouchEvent、onTouchEvent。dispatchTouchEvent负责点击事件的分发;onInterceptTouchEvent负责点击事件的拦截;onTouchEvent消费具体的点击事件。2,Activity中有两个方法:dispatchTouchEvent、原创 2015-11-02 14:41:33 · 714 阅读 · 0 评论 -
Android 判断view是否被遮挡
原理,通过view的四个顶点坐标,判断view之间是否有重叠的区域,以此来判断view是否被遮挡,但是情况覆盖不全面,需要根据具体情况调整判断策略public boolean isViewCovered(final View view) { View currentView = view; Rect currentViewR转载 2015-11-02 10:15:49 · 7587 阅读 · 0 评论 -
Android将后台应用唤起到前台的方法
在Android应用中,有一种场景是点击通知栏,唤起应用,此场景有如下几种情况:1 应用在前台,点击通知,直接执行跳转操作;2 应用在后台,将后台进程唤起到前台,执行跳转操作;3 应用没有启动,启动应用,执行跳转操作;4 应用在后台被回收,恢复应用,然执行跳转操作。目前以下几种方式能够实现上述效果:1 通过设置Intent的flag,代码如下:Intent intent原创 2015-11-06 14:16:37 · 40218 阅读 · 1 评论 -
Android内存泄露案例分析
http://www.csdn.net/article/2015-09-07/2825631转载 2015-09-14 15:37:56 · 534 阅读 · 0 评论 -
腾讯Bugly干货分享:Android机型适配之痛
http://www.csdn.net/article/2015-09-08/2825645/1转载 2015-09-14 15:14:42 · 928 阅读 · 0 评论 -
Android Fragment使用注意事项
1 使用FragmentActivity的时候,当应用在后台被回收之后,用户点击启动应用,FragmentActivity会默认恢复之前的Fragment对象,所以要在onCreate里面对改情况区分处理,否则会存在两份fragment的实例对象;2 频繁使用Fragment的add方法添加Fragment,而不hide后面的Fragment,这样可能会导致过度绘制的问题,如果叠加的层次太深的原创 2015-08-20 09:25:48 · 442 阅读 · 0 评论 -
Android开发之Viewpager与TextView结合使用时不能滑动的问题
1,在使用Android Viewpager实现轮播图功能时,需要再轮播图上面使用TextView显示文本信息,对TextView设置了singleLine属性,实现之后发现在TextView的区域内点击滑动失效,通过测试发现,Textview设置singleLine属性之后,会影响Viewpager的滑动事件,解决办法为去掉singleLine属性,使用maxLines属性,问题解决。原创 2015-08-18 11:22:49 · 2806 阅读 · 5 评论 -
Andorid开发之进程后台被kill后恢复与webView.loadUrl拼接参数注意事项
最近在做项目开发的时候,遇到两个比较难解的bug,最终发现是因为在写代码的时候情况考虑不全,特此记录:1,Android应用在后台被kill,然后重新打开应用,由于不是用户手动kill或者退出,系统会为用户恢复状态,但是这时候只会调用MainActivity的onCreate方法,如果有些操作是在launch页中处理的话,这种情况就不能将所有的处理逻辑执行完毕,肯能导致出现很难复现的bug。原创 2015-08-18 10:07:38 · 1717 阅读 · 0 评论 -
Android及ios适配原理总结
这里通过对比Android及ios系统解决多机型适配的方法,加深适配问题的理解,如果错误,请指正对已Android系统来说,由于Android的机型很多,屏幕种类各异,为了在不同的Android设备上保持一致的体验,在开发Android的app的时候,需要考虑到app的适配问题。首先,我们需要明确在不同的Android设备上,造成app显示不一样的原因。具体来说,有两个因素影响显示效果原创 2015-07-21 17:42:13 · 2866 阅读 · 0 评论 -
Android总结之Animation
Android中存在三种动画,分别为Tween动画、Frame动画以及属性动画。通过对比Tween动画与属性动画的一些不同点,加深对动画Api的记忆:1、每种动画都可以通过代码或者xml实现Tween动画通过 AnimationUtils.loadAnimation(context, id)来读取xml动画;属性动画则通过 AnimatorInflater.loadAnimator原创 2015-07-11 17:27:12 · 1392 阅读 · 0 评论 -
Android代码片段
1在需要监听的activity中重写onKeyDown()。public boolean onKeyDown(int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {原创 2012-11-13 14:44:25 · 3226 阅读 · 2 评论 -
android的PowerManager和PowerManager.WakeLock
前言 学习android一段时间了,为了进一步了解android的应用是如何设计开发的,决定详细研究几个开源的android应用。从一些开源应用中吸收点东西,一边进行量的积累,一边探索android的学习研究方向。这里我首先选择了jwood的 Standup Timer 项目。本文将把研究的内容笔记整理,建立一个索引列表。PowerManager.WakeLock PowerMan转载 2012-11-12 16:58:06 · 7291 阅读 · 0 评论 -
Android打jar包之将Android工程连同第三方jar包一起打包成jar包问题总结
由于项目需要,需要将Android工程打包成jar包供他人调用,随着功能的增加,需要引入第三方jar包的功能,因而要将Android工程连同第三方的jar包一起重新打包成jar包,现在将实际操作中的一些问题稍作总结。Android工程打包成jar包一共可分为三种情况,下面针对不同情况总结不同的打包方法:情况一:需要打包的Android工程不包含任何资源文件,只需打包源代码方法1原创 2012-09-13 19:05:53 · 6076 阅读 · 3 评论 -
在popupWindow中使用ListView时对ItemView设置fill_parent不起作用的问题
在开发过程中使用到了PopupWindow,在PopupWindow中添加了一个ListView组件,而ListViw中Item是创建的一个TextView对象,为了实现出较好的UI效果,需要对TextView设置layout属性以调整组件的上下间距,情况如下1 将parentView的width和height都设置为fill_parent的时候,在C8500上第一次进入应用管用,但是再次设置原创 2013-01-30 16:52:08 · 2635 阅读 · 0 评论 -
Android之Notification的使用
我们在写程序时,如果只按正常的逻辑走的话,程序写好之后虽然可以运行,但是这样的程序很脆弱,如果有一个条件不能满足,程序就可能出bug,所以一定要在苛刻的条件下检验自己的程序,这样的程序才能拿的出手。关于android中Notification的使用网上的资料多的是,demo也很多,我在这就不画蛇添足了。只说一种特殊的情况:动态设置Notification的图标用过Notification的原创 2012-10-23 10:37:16 · 1591 阅读 · 1 评论 -
Activity启动模式总结
首先,感谢大家的分享,只有根据大家分享的经验,加上自己的体会,才能有一点点的总结哈!!!Android中Activity的启动模式有四种,分别为standard、singleTop、singleTask、singlestance,设置系统的启动模式可以在AndroidManifest.xml中的标签中添加如下属性:android:launchMode="standard"android原创 2012-11-23 15:30:48 · 581 阅读 · 0 评论 -
Android应用程序的数据存放目录解说
转自: http://blog.csdn.net/yihui823/article/details/6722456Android的每个应用程序,都有自己的可控的目录。在Setting/Application info里面,可以看到每个应用程序,都有Clear data和Clear cache选项。具体这些目录在哪里呢?用adb连接上设备。如果是连接真实设备,需要有设备的ro转载 2012-11-08 10:59:23 · 409 阅读 · 0 评论 -
判断当前手机系统是否支持google map api
摘抄自gansc23的博客:http://www.cnblogs.com/gansc23/archive/2011/02/28/1967207.html。完整原文请点击链接查看。 并不是所有的Android真机中都带有Google Map add-on,要想内置Google Map add-on是需要和google商谈的。在标签中还包含了一个没有公布的属性"android:requ转载 2012-10-31 16:09:28 · 753 阅读 · 0 评论 -
Android之退出程序思考
做Android开发也有一段事件了,在最近做的一个项目中,发现了一个现象,就是Android退出程序的问题。一直以为一个应用的Activiy结束之后,程序也就随之关闭,所有的操作也就应该停止了!但最近才发现,这样的理解是错误的!通过程序测试我发现,虽然一个程序的主Activity退出了,但是程序的进程并不会被杀死,如果这时程序中有线程开始的话,线程还会一直在后台执行,不信可以自己测下。原创 2012-10-13 10:41:04 · 784 阅读 · 1 评论 -
Android模拟HOME键返回效果的方法
@Overridepublic void onBackPressed() { //实现Home键效果 //super.onBackPressed();这句话一定要注掉,不然又去调用默认的back处理方式了 Intent i= new Intent(Intent.ACTION_MAIN); i.setFlags(I转载 2013-07-05 11:31:55 · 6727 阅读 · 0 评论 -
Android中关于主线程的理解
在Android中,四大组件运行在主线程中,在主线程中做耗时操作会导致程序出现卡顿甚至出现ANR异常,一个基本常识就是将耗时操作放到子线程中去处理,然后通过Handler回调到主线程。但是有三点还需要注意:1 因为四大组件运行在一个主线程中,那么若果当前界面在显示的时候,后台的activity仍有处理逻辑再运行的话,仍然会造成当前界面的卡顿;2 通过Handler回调到主线程只是避免程原创 2014-06-25 10:44:06 · 8240 阅读 · 0 评论 -
Android matrix相关知识
Android matrix 控制图片的旋转、缩放、移动 :http://blog.csdn.net/nicko_zhangjin/article/details/6721717转载 2014-06-23 14:11:19 · 568 阅读 · 0 评论 -
Android检测软键盘的弹起与隐藏
原文地址:http://blog.csdn.net/liangguo03/article/details/7317543android点击列表后弹出输入框,所点击项目自动滚动到输入框上方:http://www.cnblogs.com/angeldevil/p/3638647.html以上为两个相关的blog,应该还有很多细节需要完善,这里仅提供一个思路!转载 2014-06-23 14:06:56 · 4406 阅读 · 0 评论 -
Android关于Activity和task以及近期任务栏启动的相关思考
其实关于Android的Activity和task的关系,网上文章很多,我只是针对我自己发现的问题,稍作总结我的理解是,对于一个app而言,它的Activity是保存在task中的,一个app可以有多个task,一个task可以有多个Activity,当我们按下home键的时候,当前运行app的task进入到后台,当我们重新进入应用,就会直接返回之前task的位置。以上为正常逻辑原创 2013-07-05 10:49:12 · 3949 阅读 · 0 评论 -
Android开发之广播处理
最近在做一个项目,使用到了广播,其实之前就已经接触过广播,现在就将自己的在使用广播中过程中的经验和大家分享椅下,希望对大家有所帮助!!这里我就不再详细介绍广播如何使用了,网上的资料多的是。现在只是将广播总结下:1 广播有两种:系统广播,自定义广播。系统广播及为系统发送的广播,例如开机广播,接收短信的广播等;自定义的广播及我们自己发送的广播2 广播类型也有两种:一种是有序广播,一种是无序原创 2012-10-23 10:19:27 · 680 阅读 · 0 评论