安卓
java_zhaoyanli
不忘初衷,善始善终。
展开
-
Android的WebView退出后flash视频播放器无法退出的问题
public void onPause() {//继承自Activity super.onPause(); web.onPause(); } [java] view plaincopypublic void onResume() {//继承自Activity转载 2015-05-25 19:53:31 · 285 阅读 · 0 评论 -
android 将View保存成Bitmap
public Bitmap convertViewToBitmap(View view){ Bitmap bitmap = Bitmap.createBitmap(view.getWidth(), view.getHeight(), Bitmap.Config.ARGB_8888); //利用bit转载 2015-05-25 20:02:42 · 330 阅读 · 0 评论 -
android PopupWindow显示位置设置
当点击某个按钮并弹出PopupWindow时,PopupWindow左下角默认与按钮对齐,但是如果PopupWindow是下图的那样,会发生错位的情况,尤其是不同尺寸的平板上,那错位错的不是一般的不靠谱,而Android本身只提供了如下几个方法设置PopupWindow显示位置showAsDropDown(View anchor, int xoff, int yoff) 以anchor转载 2015-05-25 20:44:41 · 1180 阅读 · 0 评论 -
java字符串查找替换
(1).public static String StrReplace(String rStr, String rFix, String rRep) { int l = 0; String gRtnStr = rStr; do转载 2015-05-25 20:47:22 · 1006 阅读 · 0 评论 -
浅谈android的selector背景选择器(ListView/GridView)
关于listview和button都要改变android原来控件的背景,在网上查找了一些资料不是很全,所以现在总结一下android的selector的用法。首先android的selector是在drawable/xxx.xml中配置的。先看一下listview中的状态:把下面的XML文件保存成你自己命名的.xml文件(比如list_item_bg.xml),转载 2015-05-26 08:48:26 · 559 阅读 · 0 评论 -
Android中利用GridView实现水平和垂直均有滚动条的表格效果
研究了一下Android的GridView,但是默认的GridView只支持垂直滚动,不支持水平滚动,有时我们为了实现表格效果,想达到水平和垂直均有滚动条,可以利用下面方法实现)。1)main.xml -- 布局文件 android:layout_width="fill_parent" android:layout_height="fill_parent"转载 2015-05-26 08:52:02 · 489 阅读 · 0 评论 -
Android - 主要的UI元素。
下面的这张图呈现了Android中最基本的UI构造块。该图片表示的逻辑结构也是出自《Android系统原理及开发要点详解》一书。Android中的UI元素常常在布局文件(Layout)中进行描述,在Java源代码中通过findViewById()函数根据ID获得每一个View的句柄,并且转换成实际的类型来使用。android.view.V转载 2015-05-26 09:37:33 · 419 阅读 · 0 评论 -
Android - 常见错误的解决方法
在这里列举一些我在使用Android时遇到常见错误的解决方法,有些问题的解决方法也是从网上找到的,我又将它们做了一些整理和收集。后续也将会不断的更新,将使用中遇到的问题增加进来。今天从网上下载了几个Android的源代码,用Eclipse导入出问下面的错误:一、出现“The type java.lang.Object cannot be resolved. It is转载 2015-05-26 09:39:16 · 327 阅读 · 0 评论 -
Android系统在超级终端下必会的命令大全(adb shell命令大全)
1. 显示系统中全部Android平台: android list targets 2. 显示系统中全部AVD(模拟器): android list avd 3. 创建AVD(模拟器): android create avd --name 名称 --target 平台编号 4. 启动模拟器: emulator转载 2015-05-26 09:44:40 · 689 阅读 · 0 评论 -
android-横竖屏切换总结-布局改变和数据保存
ndroid: 横竖屏切换总结-布局改变和数据保存目录:引言一、布局问题二、重新载入问题三、Q:横竖屏生命周期的切换有可能是什么样的?引言 Activity在Configuration变化(比如设备横竖屏切换)时会重启Activity,即会执行onDestory()周期函数,然后onCreate(),重新创建Activity。这转载 2015-05-25 19:56:58 · 727 阅读 · 0 评论 -
Android碎片Fragment使用简介
我们都知道,Android上的界面展示都是通过Activity实现的,Activity实在是太常用了,我相信大家都已经非常熟悉了,这里就不再赘述。 但是Activity也有它的局限性,同样的界面在手机上显示可能很好看,在平板上就未必了,因为平板的屏幕非常大,手机的界面放在平板上可能会有过分被拉长、控件间距过大等情况。这个时候更好的体验效果是在Activity中嵌入"小Activity",然后每个转载 2015-05-25 19:57:07 · 286 阅读 · 0 评论 -
【Android】创建Popwindow弹出菜单的两种方式
方法一的Activity[java] view plaincopypackage com.app.test02; import android.app.Activity; import android.os.Bundle; import android.view.Gravity; import androi转载 2015-05-26 09:06:28 · 449 阅读 · 0 评论 -
Java 变量地址
使用System.out.println(obj.hashcode())输出的时对象的哈希码, 而非内存地址。在Java中是不可能得到对象真正的内存地址的,因为Java中堆是由JVM管理的不能直接操作。 只能说此时打印出的Hash码表示了该对象在JAVA虚拟机中的内存位置,Java虚拟机会根据该hash码最终在真正的的堆空间中给该对象分配一个地址. 但是该地址 是不能通过j转载 2015-05-25 20:03:56 · 465 阅读 · 0 评论 -
Android Gesture 手势识别使用实例
很高兴能在Android1.6的sdk看到手势识别这一功能,之前一直在想,如何在android中实现nds游戏那样用手势(准确点应该是笔势)来控制游戏角色?现在总算看到一点曙光了,不过手势要做到笔势那样随心所欲地控制游戏人物,还有很多细节问题需要处理。 在Android1.6的模拟器里面预装了一个叫Gestures Builder的程序,这个程序就是让你创建自己的手势的(Gestur转载 2015-05-25 20:04:59 · 1173 阅读 · 0 评论 -
【译】如何使用Android MediaStore裁剪大图片
转载声明:Ryan的博客文章欢迎您的转载,但在转载的同时,请注明文章的来源出处,不胜感激! :-) http://my.oschina.net/ryanhoo/blog/86843译者:Ryan Hoo来源:http://www.androidworks.com/crop_large_photos_with_android 译者按:在外企工作的半年多转载 2015-05-25 20:05:58 · 298 阅读 · 0 评论 -
Android_Bitmap_图片的二次采样并生成缩略图
http://blog.csdn.net/zimo2013/article/details/168494771.Bitmap概述Android系统支持几种图片(.png (preferred), .jpg (acceptable), .gif (discouraged)), 其中Bitmap位图#ffffffff,包括图片透明度Alpha和RGB,图片质量很好,每一个像素位占4转载 2015-05-25 20:20:06 · 276 阅读 · 0 评论 -
Android内存管理试验——浅谈ImageView的Bitmap的使用
今天在项目中碰到了史无前例的内存泄漏问题,在大量使用Bitmap的Activity的中概率性出现如下错误:07-13 13:17:20.534: ERROR/AndroidRuntime(5161): java.lang.OutOfMemoryError: bitmap size exceeds VM budget也就是OOM内存溢出的问题。在 Java中,JavaVM拥有自动转载 2015-05-25 20:31:11 · 389 阅读 · 0 评论 -
android线程池
线程池的基本思想还是一种对象池的思想,开辟一块内存空间,里面存放了众多(未死亡)的线程,池中线程执行调度由池管理器来处理。当有线程任务时,从池中取一个,执行完成后线程对象归池,这样可以避免反复创建线程对象所带来的性能开销,节省了系统的资源。比如:一个应用要和网络打交道,有很多步骤需要访问网络,为了不阻塞主线程,每个步骤都创建个线程,在线程中和网络交互,用线程池就变的简单,线程池是对线程的一转载 2015-05-25 20:31:49 · 230 阅读 · 0 评论 -
深入浅出多线程(4)对CachedThreadPool OutOfMemoryError问题的一些想法
线程池是Conncurrent包提供给我们的一个重要的礼物。使得我们没有必要维护自个实现的心里很没底的线程池了。但如何充分利用好这些线程池来加快我们开发与测试效率呢?当然是知己知彼。本系列就说说对CachedThreadPool使用的一下问题。 下面是对CachedThreadPool的一个测试,程序有问题吗?package net.blogjava.vincent;im转载 2015-05-25 20:34:26 · 356 阅读 · 0 评论 -
iPhone Launch之启动类型的判断
应用程序启动完成的回调函数,从3.0开始,已经有原来的- (void)applicationDidFinishLaunching:(UIApplication *)application;改成了- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary*)launc转载 2015-05-25 20:51:25 · 359 阅读 · 0 评论 -
Android GridView属性集合
GridView的一些特殊属性:1.android:numColumns=”auto_fit” //GridView的列数设置为自动2.android:columnWidth=”90dp " //每列的宽度,也就是Item的宽度3.android:stretchMode=”columnWidth"//缩放与列宽大小同步4.andr转载 2015-05-26 08:47:46 · 210 阅读 · 0 评论 -
Android大图片裁剪终极解决方案(中:从相册截图)
转载声明:Ryan的博客文章欢迎您的转载,但在转载的同时,请注明文章的来源出处,不胜感激! :-) http://my.oschina.net/ryanhoo/blog/86853 在这篇博客中,我将向大家展示如何从相册截图。 上一篇博客中,我就拍照截图这一需求进行了详细的分析,试图让大家了解Android本身的限制,以及我们应当采取的实现方转载 2015-05-25 20:07:31 · 399 阅读 · 0 评论 -
android获得控件在屏幕中的绝对坐标 getLocationInWindow 和 getLocationOnScreen
int[] location = new int[2] ;view.getLocationInWindow(location); //获取在当前窗口内的绝对坐标view.getLocationOnScreen(location);//获取在整个屏幕内的绝对坐标location [0]--->x坐标,location [1]--->y坐标getLocationOnScr转载 2015-05-25 20:09:56 · 732 阅读 · 0 评论 -
Android中Bitmap, Drawable, Byte之间的转化
1. Bitmap 转化为 byte ByteArrayOutputStream out = new ByteArrayOutputStream(); bitmap.compress(Bitmap.CompressFormat.PNG, 100, out); byte[] array= out.toByteArray(); 2. byte转化为bitmap转载 2015-05-25 20:12:42 · 431 阅读 · 0 评论 -
Android开发优化之——使用软引用和弱引用
Java从JDK1.2版本开始,就把对象的引用分为四种级别,从而使程序能更加灵活的控制对象的生命周期。这四种级别由高到低依次为:强引用、软引用、弱引用和虚引用。这里重点介绍一下软引用和弱引用。如果一个对象只具有软引用,那么如果内存空间足够,垃圾回收器就不会回收它;如果内存空间不足了,就会回收这些对象的内存。只要垃圾回收器没有回收它,该对象就可以被程序使用。软引用可用来实现内存敏感的转载 2015-05-25 20:20:13 · 243 阅读 · 0 评论 -
Android View.VISIBLE、INVISIBLE、GONE的区别
android中UI应用的开发中经常会使用view.setVisibility()来设置控件的可见性,其中该函数有3个可选值,他们有着不同的含义:View.VISIBLE--->可见View.INVISIBLE--->不可见,但这个View仍然会占用在xml文件中所分配的布局空间,不重新layout View.GONE---->不可见,但这个View在ViewGroup中不保留位置转载 2015-05-25 20:22:53 · 286 阅读 · 0 评论 -
Could not allocate CursorWindow size due to error -12 错误解决方法
程序出现下面的错误:08-30 20:27:36.751 E/CursorWindow(u 760): Could not allocate CursorWindow '/data/data/com.android.providers.media/databases/external.db' of size 2097152 due to error -12.08-30 20:27:36转载 2015-05-25 20:23:33 · 2097 阅读 · 0 评论 -
Android处理图片OOM的若干方法小结
前言众所周知,每个Android应用程序在运行时都有一定的内存限制,限制大小一般为16MB或24MB(视平台而定)。因此在开发应用时需要特别关注自身的内存使用量,而一般最耗内存量的资源,一般是图片、音频文件、视频文件等多媒体资源;由于Android系统对音频、视频等资源做了边解析便播放的处理,使用时并不会把整个文件加载到内存中,一般不会出现内存溢出(以下简称OOM)的错误,因此它们的内存消转载 2015-05-25 20:28:59 · 276 阅读 · 0 评论 -
android 多线程 - 并行包线程池为例说说线程池的设计需求及使用
线程对象的创建和销毁是需要花费系统资源的,通过线程池,可以避免该问题并提高系统的响应时间。这种情形类似我们常提到的数据库连接池。 线程池的广泛应用使得在SUN在JDK 1.5的工具包提供了线程池的支持。我计划将该系列分为设计需求与设计实现两个部分。这样会更加清晰。如果想要熟悉,并熟练应用线程池,那么通过设计需求 篇也就是该篇就可以找到答案。如果想探究实现的细节,那么在设计实现篇会有深入转载 2015-05-25 20:31:06 · 308 阅读 · 0 评论 -
android Handler与Message(多线程间传递消息)
public class MainActivity extends Activity {02 03 private final static int CHANGE = 1;04 05转载 2015-05-25 20:37:49 · 444 阅读 · 0 评论 -
Android软键盘的隐藏显示研究
Android是一个针对触摸屏专门设计的操作系统,当点击编辑框,系统自动为用户弹出软键盘,以便用户进行输入。 那么,弹出软键盘后必然会造成原有布局高度的减少,那么系统应该如何来处理布局的减少?我们能否在应用程序中进行自定义的控制?这些是本文要讨论的重点。 一、软键盘显示的原理 软件盘的本质是什么?软键盘其实是一个Dialog! InputM转载 2015-05-25 20:47:58 · 229 阅读 · 0 评论 -
总结了近百个Android优秀开源项目,覆盖Android开发的每个角落
Android开发又将带来新一轮热潮,很多开发者都投入到这个浪潮中去了,创造了许许多多相当优秀的应用。其中也有许许多多的开发者提供了应用开源项目,贡献出他们的智慧和创造力。学习开源代码是掌握技术的一个最佳方式。下面推荐几个应用开源项目,这些项目不仅提供了优秀的创意,也可以直接掌握 Android内核的接口使用: 1、Android团队提供的示例项目 如果不是从学习Android S转载 2015-05-26 09:29:59 · 603 阅读 · 0 评论 -
iPad3, Android5,Win8, 三足鼎立,谁与争峰?
iPad3预计下周上市,现在的新闻也是抄的很火.Android 5.0 也将于今年第二季度推出,是为了更好的适应平板电脑.Win8也将在今年推出,各种各样的消息也不断的传出.现在各大网站上也有很多关于这个它们之间的评论文章,什么Windows 8将对iPad 3构成最大威胁,Window8将会吃掉Android的一部分市场等等.我不是做业界分析的,也不好转载 2015-05-26 09:43:09 · 396 阅读 · 0 评论 -
Could not allocate CursorWindow size due to error -12 错误解决方法
程序出现下面的错误:08-30 20:27:36.751 E/CursorWindow(u 760): Could not allocate CursorWindow '/data/data/com.android.providers.media/databases/external.db' of size 2097152 due to error -12.08-30 20:27:36转载 2015-05-25 20:15:21 · 1405 阅读 · 0 评论 -
android listview直接定位到某一行位置
如何让listview加载完成后,直接定位到某一行?直接用listview.setSelection(int position);adapter.notifyDataSetInvalidated();//通知adapter数据有变化 lstAjap.setSelection(10);//定位到10行转载 2015-05-25 20:10:48 · 1423 阅读 · 0 评论 -
android 多线程 - 线程池 Executors.newFixedThreadPool 的使用例子
class ExecutorThread implements Runnable { private final String name; MutliPageItemView mItemView; MutliPageAdapter mData; //初始化参数(根据需要修改) public Executor转载 2015-05-25 20:33:09 · 1995 阅读 · 0 评论 -
xCode5.0使用iOS6.1SDK及模拟器
最近项目中,介于测试人员提出的问题,有些情况只在ios6的设备上才能显现,而本机的xcode已升级到最新的5.0,这可如何是好呢,在网上搜索了一番,找到如下方法解决此问题:1.打开xcode5.0的目录:Finder中点击“应用程序”,找到xcode,右击选择“显示包内容”,进入“Contents—Developer—Platforms—iPhoneOS.platform—Developer—转载 2015-05-26 08:49:44 · 248 阅读 · 0 评论 -
IOS 5 6 7适配
最近一直在做app的iOS 6和7的同时适配工作,所以在此介绍一下系统与设备的兼容问题。一、Base SDK与Deployment Target一个项目(Project)可以有多个目标(Target),每个目标可以指定不同的设置(例如支持不同的系统版本,引用不同的Framework等)。项目设置会覆盖默认设置,而每个目标的设置则会覆盖项目设置。在Xcode的项目浏览窗口中点击项目,转载 2015-05-26 08:53:49 · 297 阅读 · 0 评论 -
ViewGroup onInterceptTouchEvent,ViewGroup onTouchEvent,View onTouchEvent执行顺序说明
今天抽出了一些时间实践了viewgroup和view的触摸事件顺序,之前也试过,总是忘记,今天记下笔记说明一下首先 onInterceptTouchEvent只会出现在viewgroup中,view中是没有此方法的。看下官方给出onInterceptTouchEvent返回值的解释Return true to steal motion events from the childre转载 2015-05-26 08:56:22 · 437 阅读 · 0 评论 -
Android屏幕自适应解决方案
以下是Demo首页的预览图一、细说layout_weight 目前最为推荐的Android多屏幕自适应解决方案。 该属性的作用是决定控件在其父布局中的显示权重,一般用于线性布局中。其值越小,则对应的layout_width或layout_height的优先级就越高,一般横向布局中,决定的是layout_width的优先级;纵向布局中,决定的是layout转载 2015-05-26 09:04:09 · 306 阅读 · 0 评论