android
文章平均质量分 66
阁楼猫
这个作者很懒,什么都没留下…
展开
-
Android WebView常见问题及解决方案汇总
Android WebView常见问题解决方案汇总:就目前而言,如何应对版本的频繁更新呢,又如何灵活多变地展示我们的界面呢,这又涉及到了web app与native app之间孰优孰劣的争论. 于是乎,一种混合型的app诞生了,灵活多变的部分,如淘宝商城首页的活动页面,一集凡客诚品中我们都可以见到web 页面与native页面的混合,既利用了web app的灵活易更新,也借助了native a转载 2013-11-15 15:32:09 · 1195 阅读 · 0 评论 -
android下拉刷新listView剖析
http://www.apkbus.com/forum.php?mod=viewthread&tid=140693转载 2013-11-19 11:46:16 · 989 阅读 · 0 评论 -
Android 加载网页进度条
1、首先定义一个RelativeLayout布局文件 broser_custom_title.xml (AlwaysMarqueeTextView这个类重写了TextView,实现一个跑马灯的效果,网上能够找到)Java代码:XML/HTML代码android:layout_height="fill_parent">android:id="@+id/tvti原创 2013-11-07 11:11:22 · 1340 阅读 · 0 评论 -
android图片根据屏幕适配
有时候 图片不能充满屏幕方法一:可以根据图片和屏幕的比例放大或者缩小 /* 取得屏幕分辨率大小 */ DisplayMetrics dm=new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(dm); displayWidth=dm.widthPixels;原创 2013-11-07 11:45:31 · 1310 阅读 · 0 评论 -
android倒计时的简单实现方法
public class NewActivity extends Activity { private MyCount mc; private TextView tv; @Override protected void onCreate(Bundle savedInstanceState) { super.onCr原创 2013-11-07 15:19:33 · 968 阅读 · 0 评论 -
app首次进入的时候,新手操作进行提醒操作
android:layout_width="fill_parent" android:layout_height="fill_parent" > android:layout_width="match_parent" android:layout_height="match_parent" android:layout原创 2013-11-07 10:49:14 · 2656 阅读 · 0 评论 -
Movie播放Gif,完美实现屏幕适配
android播放gif 我研究过3种第一 :GifView支持android播放gif,效果是 先加载第一帧,然后慢慢加载完其他的针,这样效果视觉很不好,是从模糊到清晰的过程;第二:是流行的把gif图片通过工具分拆成n帧,然后使用逐帧动画播放,我感觉很麻烦的样子;第三 :使用Movie提供的Movie.decodeStream()方法解析gif,然后通过文件流的方式播放,效果特原创 2013-11-07 10:55:03 · 2099 阅读 · 1 评论 -
android:获取当前应用的版本
/*获取当前应用的版本号*/public int getVersionCode(Context context){ try { return context.getPackageManager().getPackageInfo(context.getPackageName(), 0).versionCode;} catch (NameNotFoundExce原创 2013-11-25 14:08:04 · 761 阅读 · 0 评论 -
自动写一个日志类,以取代android.util.Log类
import android.content.Context;import android.util.Log;import android.widget.Toast;public class MyLog{ public static final boolean DEBUG = true; public static void v(String tag,S原创 2013-11-25 15:09:42 · 927 阅读 · 0 评论 -
Json字符串转List集合
public static ArrayList parseJson2List(String jsonData,Class c) throws JSONException { if(null==jsonData || "".equals(jsonData))return null; Gson gson = new Gson(); Arr原创 2013-11-13 15:18:37 · 1694 阅读 · 0 评论 -
Android硬件加速
Android从3.0(API Level 11)开始,在绘制View的时候支持硬件加速,充分利用GPU的特性,使得绘制更加平滑,但是会多消耗一些内存。 开启或关闭硬件加速: 由于硬件加速自身并非完美无缺,所以Android提供选项来打开或者关闭硬件加速,默认是关闭。可以在4个级别上打开或者关闭硬件加速: Application级别: Act翻译 2013-11-15 16:32:26 · 836 阅读 · 0 评论 -
android从子页面跳转回主页面注意
我们做项目中很多时候需要从子页面跳转回主页面HomeActivity,不能简单的starActivity(),这样做会在原有的栈中继续添加一个HomeActivity要清空原来栈中的数据,才具有返回首页的真正意义原创 2013-12-10 18:09:01 · 1996 阅读 · 0 评论 -
ScrollView嵌套Gridview或者listview滚动问题
在ScrollView中嵌套Gridview/ListView(或者ScrollView)的另外一个问题就是,子GridView中无法滑动的(如果它没有显示完全的话),因为滑动事件会被父ScrollView吃掉,如果想要让子GridView也可以滑动,只能强行截取滑动事件.这样做也不好,两个滑动事件,用户不一定可以精准的滑动子Gridview,造成体验不好,建议全部显示子控件Gridview的内容原创 2013-12-03 20:11:32 · 880 阅读 · 0 评论 -
GridView里面的Item高度设置
有时候 item高度不一致,要是在xml文件中定义死高度,对于不同屏幕的适配是个问题,所以选择动态的设置item的高度, 有2种思路:一、在有换行的gridview行中 同行大小一样。其他自适配 二 、全部统一大小,以最大的Item大小为标准我现在实现第二种方式:package com.example.gridviewdemo原创 2013-12-16 21:41:57 · 8410 阅读 · 0 评论 -
android开机自启动程序设置
Android启动时,会发出一个系统广播 ACTION_BOOT_COMPLETED,它的字符串常量表示“android.intent.action.BOOT_COMPLETED”开机自启动程序,只需要“捕捉”到这个消息再启动你的程序即可,我们要做的是接收这个消息,并实现一个BroadcastReceiver。第一步 配置在AndroidManifest.xml中Appli原创 2013-12-18 11:20:07 · 1235 阅读 · 0 评论 -
ScrollView嵌套GridView,自定义Gridview动态设置Item的高度,屏幕适配
GridView的Item动态改变高度,如图 图1 item高度相同 图2 Item部分高度比较大出现这种情况,需要把所有的高度设置为相同,即为最大Item的高度public int getDimensionPixelSize(int index, int defValue) public static int comp原创 2014-01-08 16:44:22 · 2748 阅读 · 0 评论 -
关于getX()getY()就可以获取到位置,找不到方法问题
getX,getY方法是api11以上才支持,用来在滑动屏幕后,获取View相对于屏幕的水平/竖位移如果使用在android api 11以下的版本就会找不到方法,可以使用getLeft()或者getBottom()代替,也能达到获取View相对于屏幕的水平/竖位移的效果原创 2014-01-08 15:11:42 · 1021 阅读 · 0 评论 -
Android开发人员必看的资料
分享一些android学习资料链接 :http://down.51cto.com/data/412494原创 2014-01-07 20:14:42 · 738 阅读 · 0 评论 -
ListView学习思维导图
原创 2014-01-26 15:50:50 · 975 阅读 · 0 评论 -
android进阶(一)Activity加载模式
很多时候我们会对已经创建的Activity重用这样使用加载模式就可以很好的管理4种设计模式:Standard--标准的启动模式。每次激活Activity时都会创建Activity,并放入任务栈中。SingleTop--如果在任务的栈顶正好存在该Activity的实例, 就重用该实例SingleTask-- 如果在栈中已经有该Activity的实例原创 2014-02-10 16:21:36 · 670 阅读 · 0 评论 -
Android进阶(二) Activity调用Service 通过AIDL实现
什么是aidl:aidl是 Android Interface definition language的缩写,它是一种android内部进程通信接口的描述语言,通过它我们可以定义进程间的通信接口实现步骤:1.创建一个MyServiceDemo工程,删掉layout(这个服务不需要layout布局),在manifest中注册MyService,写好service中要公开的服务,我原创 2014-02-11 14:36:25 · 915 阅读 · 0 评论 -
原生App vs 移动Web App : 你如何选择
所以在你准备做移动App时,你应该先问问自己以下几个问题:你的应用是否需要使用某些设备的特殊功能,比如摄像头,摄像头闪光灯或者重力加速器你的开发预算你的应用是否一定需要网络你的应用的目标硬件设备是所有的移动设备还是仅仅只是一部分而已你自己已经熟悉的开发语言这个应用对于性能要求是否苛刻如何靠这个应用赢利我想这几个问题应该能让你做出明智的选择。 你的选择是原原创 2014-02-19 18:15:05 · 914 阅读 · 0 评论 -
android进阶(三)数据存储之Internal Storage
能够把文件直接保存在设备的内部存储器上,默认情况下,保存在内部存储器上的文件是应用程序的私有数据,其他应用程序(或用户)不能够访问它们。当用户卸载应用程序时,这些文件也会被删除。以下是在内部存储器中创建并写入一个私有文件的方法: 1. 调用openFileOutput方法,这个方法需要指定文件的名称和操作模式。它会返回一个FileOutputStream对象。 2. 用File原创 2014-02-20 16:40:15 · 1073 阅读 · 0 评论 -
Android进阶(三) 数据存储之SharedPreference
SharedPreference是android提供的一种较轻的存储方式,使用比较简单;主要在一些开关设置,webView页面保存,及其一些常量保存时使用。》采用Map存储数据格式,基于XML文件存储key-value键值对数据,通常用来存储一些简单的配置信息,可以简单读入写入操作,操作配置简单,只是在操作之前需要edit()操作,然后写入数据,在写完后需要commit数据。》原创 2014-02-20 14:40:22 · 853 阅读 · 0 评论 -
android获取屏幕控件位置问题
int[] location = new int[2] ;view.getLocationInWindow(location); //获取在当前窗口内的绝对坐标view.getLocationOnScreen(location);//获取在整个屏幕内的绝对坐标location [0]--->x坐标,location [1]--->y坐标也可以利用控件的getX(),getY()原创 2014-03-04 15:44:12 · 1097 阅读 · 0 评论 -
记住不要把Bitmap往List等集合放
很多时候,不注意这些细节,直接把bitmap放入List集合中,再者用完忘记清空bitmap,List集合,很容易造成内存泄露就算你有良好的编程习惯,用完就清空掉,但是数据在list.add()循环的时候就报内存泄露了,还没等你清空,已经oom了所以,开发中不建议把Bitmap放入list集合中原创 2014-04-29 22:14:56 · 2863 阅读 · 0 评论 -
HolderView vs ViewHolder实例
HolderView 与 ViewHolder做Android的伙伴都不会mos原创 2014-04-14 11:01:19 · 1346 阅读 · 0 评论 -
【android自定义控件】TextView详解及自定义<一>
作为android最常见的控件之一,有以下常用的属性:layout_width,layout_height:每个控件必备的属性text:文本显示,输入属性textColor:文字颜色属性textSize:文字大小还有一些特性,在某些场合用的autoLink:设置是否当文本为URL链接/email/电话号码/map时,文本显示为可点击的链接autoText:将自动执行输入原创 2014-04-01 22:41:27 · 1868 阅读 · 0 评论 -
【android自定义控件】button样式自定义<二>
Button是最长常见的控件之一,属性特征没什么好说的,就来自定义button的样式,实现我们看见的各种绚丽的button效果。要自定义样式,无外乎2种方式:一是:常见的使用点9图(.9),这个熟悉android应用开发的都不陌生,经常用到二是:矢量图,自己通过share等画出来,这个效率比较低,对于button样式改变,使用的不是很多。先来介绍使用点9图吧,点9图工具在and原创 2014-04-01 23:27:42 · 1742 阅读 · 0 评论 -
【android自定义控件】自定义Toast,AlterDialog,Notification <四>
1、自定义Toast 有没有看见一下app有很漂亮的Toast呢,不在局限于黑色背景,今天我就来带你自定义一看自己的Toast吧首先 我们需要new Toast();对象然后 有了Toast对象之后就可以对Toast进行定制了,我们需要考虑,怎么样定制呢?一般定制控件,都是写一个layout的xml布局,就可以了 我们不例外,来定义个xml文件,(一个图标,跟原创 2014-04-05 23:22:33 · 2092 阅读 · 0 评论 -
【转】android开发必看资源URL
Google Android 开发官方网站Github github 源码分享站点Google Android Group 开发官方讨论区 stackoverflow.com Android著名讨论区 Android Open Source Project Android源码,想研究源码朋友的去处转载 2014-04-01 23:42:26 · 864 阅读 · 0 评论 -
【Android自定义控件】Android自定义虚线<三>
很多时候,画虚线都是使用美工切图(一个实点,一个虚点),然后使用Bitmap的repeat属性<bitmap xmlns:android="http://schemas.android.com/apk/res/android" android:src="@drawable/repeat_bg" android:tileMode="repeat" />下面我们来画一原创 2014-04-02 10:44:26 · 2144 阅读 · 2 评论 -
分享Android开发的一些工具
IntelliJ IDEA在Java IDE中增长最快的传立媒体,包括对Java 8和Java EE 7的支持,对于Android的发展,在编辑器的增强,以及精致的摇篮一体化的新工具。Genymotion是最快的Android模拟器,具备高效、实用、简单等特性。websequencediagrams画时序图的好工具,值得你拥有Crashlytics是原创 2014-04-03 10:35:19 · 1306 阅读 · 0 评论 -
android创建桌面快捷键shortcut
有很多人也写过创建桌面快捷键的blog,但是大部分都只讲了怎么用,其实技术使用起来都很简单,但是你使用后下次还知道吗?根本原因还是不清楚原理,今天我就来讲讲shortcut创建过程。过程:home键--》点击添加--》弹出一个Dialog对话框--》Dialog对话框中的数据,是一个系统级专门用来查找的Activity启动---》查找出数据显示能添加的快捷方式-原创 2014-05-06 23:32:12 · 2476 阅读 · 0 评论 -
android开发完全退出activity
我们退出Activity可以调用:finish(),system(0),但是这些都只是单单退出单个Activity也有人会说,直接把进程杀死,这些做法都不是很可取,其实我们翻看api可以发现,Activity都是放入stack中管理,我们只要把stack清空了,不就完全退出了嘛。要对Activity的stack管理,就需要了解launchMode的四种状态,这里原创 2014-05-06 17:50:56 · 1554 阅读 · 5 评论 -
ListView嵌套ListView优化
在做业务时候,一个ListView显示多种数据类型,我们想到的方法是ListView在嵌套一个ListView,对于子ListView占父ListView的一行,就解决了问题,但是这样的逻辑是不是有点奇怪呢?第一,父ListView的长度size需要加1,因为增加了一行放子listView public int getCount() { retur原创 2014-05-07 21:43:46 · 2388 阅读 · 3 评论 -
startActivityForResult调用后立即响应了OnActivityResult()方法,导致setResult()后无响应
在做demo时候遇到startActivityForResult调用后立即响应了OnActivityResult()方法,导致setResult()后无响应OnActivityResult();查看了源码后,分析各种原因,刚开始认为是setResult调用的时间出现了问题,解释一下调用时间顺序:1、在A中startActivityForResult启动B Activity;2、B中处理原创 2014-03-24 15:46:00 · 2579 阅读 · 1 评论 -
Android全局变量使用
1、通过一个Data.java实例类,可以实现全局数据保存,这里就不多说了,学Java的都知道。2、Android特有的Application,是应用的入口,运行贯穿整个app运行过程,可以在这个类中定义全局变量public class baseApplication extends Application { private float screenWidth; pri原创 2014-05-09 18:13:13 · 1467 阅读 · 0 评论 -
Android事件处理机制
在Android中,事件主要包括点按、长按、拖拽、滑动等按下(ACTION_DOWN)移动(ACTION_MOVE)抬起(ACTION_UP)原创 2014-04-10 11:24:54 · 940 阅读 · 0 评论 -
首次启动优美新手指引tip
在开发商业应用时候,用户第一次进入app,有种无从下手的感觉,我们作为开发者要提供可用户一些指引,这些指引不能让用户看着唐突,要舒服的展示给用户,带着用户愉快的使用我们的app。怎么让用户舒服呢? 我们不能直接弹出一个AlterDialog,这样会吓跑你的用户,所以嘛 我们要温柔一点那就在整个窗体做文章吧。我们可以对定义自定义主题theme来实现这个tip,很柔和的原创 2014-05-18 22:34:16 · 1260 阅读 · 2 评论