随笔分类 -  Android开发

Android开发经验积累
摘要:今天发现即使 pow(double a, double b) 中的 a 和 b 都是 int 类型,返回值直接 cast to int 还是会出问题。比如 (int) Math.pow(10, 4)可能返回9999。 只能根据需求处理,比如 Math.round(),然后再转为 int。 阅读全文
posted @ 2016-11-07 19:31 NoodleUtopia 阅读(759) 评论(0) 推荐(0)
摘要:问题: ScrollView 中嵌套 EditText,在 EditText 中输入多行,会使 ScrollView 整体滚动。如果下方内容较长,会将 EditText 顶上去,体验不好。 解决: 监听键盘的弹出和收起,在弹出时,移除 EditText 下方的所有 View,使 ScrollView 阅读全文
posted @ 2016-09-28 11:30 NoodleUtopia 阅读(1808) 评论(0) 推荐(0)
摘要:有关 onSaveInstanceState() 那点事 我们都知道,按 home 键将 APP 压入后台时,会调用 onSaveInstanceState() 方法来保存当前状态,并可以在重新回到 APP 时恢复。最近做了一些保存和恢复 Activity/Fragment 状态的事,总结了一点经验 阅读全文
posted @ 2016-09-27 14:03 NoodleUtopia 阅读(500) 评论(0) 推荐(0)
摘要:利用JPEG文件中的EXIF信息调整照片方向 问题起源:竖屏应用的预览图像和拍摄的照片均旋转了90度 这个问题的原因是,在Android系统中定义了相机传感器方向,这个方向默认为:当你面对屏幕时,横置手机,如果摄像头靠近上方,那么此时即默认方向。当竖立手机,且前置、后置摄像头都在上方时,前置摄像头的 阅读全文
posted @ 2016-08-29 20:38 NoodleUtopia 阅读(5667) 评论(0) 推荐(0)
摘要:1.什么是热修复 热修复,又称热补丁,一般是用事先定义好的接口,从网络下载代码并更新客户端代码,从而在用户无感知、也无需重装App的情况下,实现动态修复或动态更新。 2.为什么需要热修复 无感知,无需重新下载安装,用户体验更好。 3.怎样实现热修复 目前较为成熟的方案主要有两种: 1).Classl 阅读全文
posted @ 2016-08-18 17:45 NoodleUtopia 阅读(1133) 评论(0) 推荐(0)
摘要:项目中遇到一个Bug:PopupWindow 不响应 Back 键收回了。 google了一下,发现解决方法是:PopupWindow#setBackgroundDrawable(new BitmapDrawable()) 具体原因是: The reason the background canno 阅读全文
posted @ 2016-07-15 13:52 NoodleUtopia 阅读(319) 评论(0) 推荐(0)
摘要:以下内容翻译整理自官方文档: Keeping Your App Responsive ANR 即 Application Not Responding。当App将在相当长的一段时间内无响应,系统将提供ANR提示给用户,使其可以退出App。 发生原因: 满足下列条件之一: 5秒内对输入事件无响应(如按 阅读全文
posted @ 2016-07-15 13:39 NoodleUtopia 阅读(219) 评论(0) 推荐(0)
摘要:前阵子遇到一个 Bug。一个 activity 的启动动画需要自定义为从屏幕底部升起。当时是这样写的: startActivity(new Intent(this, SettingActivity_.class)); overridePendingTransition(R.anim.slide_in 阅读全文
posted @ 2016-01-27 16:36 NoodleUtopia 阅读(2707) 评论(0) 推荐(0)
摘要:注:这篇文章是Google员工Roman Guy在其博客上发表的,主要研究了影响安卓绘图性能的一些原因,并讲解了怎样使用Android自带的测试工具来验证性能。Android Performance Case Studyby Romain Guywww.curious-creature.org ... 阅读全文
posted @ 2016-01-19 11:05 NoodleUtopia 阅读(492) 评论(0) 推荐(0)
摘要:AndroidAnnotations是一个优秀的开源依赖注入框架,可以通过添加依赖大大减少代码量,达到代码易读易维护的目的。AndroidAnnotations中,是通过@Background将方法放入后台线程中的,并且可以设置该后台任务的 id 属性,然后就可以调用 BackgroundExecu... 阅读全文
posted @ 2015-11-24 16:43 NoodleUtopia 阅读(740) 评论(0) 推荐(0)
摘要:我们都知道,WebView 和 ScrollView都是可以滚动的,当这两个View嵌套时,容易出现一些问题。其中比较常见的,是嵌套在 ScrollView 中的WebView 的焦点问题. 例如这个结构: 1 5 9 13 17 ... 阅读全文
posted @ 2015-11-18 17:31 NoodleUtopia 阅读(7186) 评论(1) 推荐(0)
摘要:今天给大家带来一个向右滑动销毁Activity的效果,Activtiy随着手指的移动而移动,该效果在Android应用中还是比较少见的,在IOS 中就比较常见了,例如“网易新闻” ,"美食杰" , "淘宝"等应用采用此效果,而Android应用中“知乎”采用的也是这种滑动切换Activity的效果,... 阅读全文
posted @ 2015-09-24 17:13 NoodleUtopia 阅读(462) 评论(0) 推荐(0)
摘要:我们都知道,在WebView的应用中,可以使用WebViewClient监听WebView的内容【加载】事件,比如onPageFinished、onPageStarted等。但是即使onPageFinished触发时,WebView的内容也并未显示。当我们想要监听WebView的内容显示事件的时... 阅读全文
posted @ 2015-09-01 19:06 NoodleUtopia 阅读(5632) 评论(0) 推荐(1)
摘要:在Android手机中内置了一款高性能webkit内核浏览器,在SDK中封装成名为WebView的组件。WebView使用:(1)添加权限:AndroidManifest.xml中必须使用许可"android.permission.INTERNET",否则会出Web page not availab... 阅读全文
posted @ 2015-08-18 15:30 NoodleUtopia 阅读(317) 评论(0) 推荐(0)
摘要:设备名变成:???????????? 错误为:insufficient permissions for device问题原因:使用$ which adb查到adb目录后发现并不是sdk中的adb,而是通过一个链接文件链接到/home/username/system-config/bin/Linux/... 阅读全文
posted @ 2015-07-02 18:34 NoodleUtopia 阅读(401) 评论(0) 推荐(0)