Android开发
文章平均质量分 54
CNnumen
If i want , i must try...
展开
-
ListView的setSelection()不起作用的原因
经常会有这种case, 希望打开一个listview的时候能够自动设置显示的位置, setSelection(int pos)可以设置显示的位置, 但是发现设置了不起作用, 还是从0开始显示的这是需要把setSelection()的调用放到runnable()中去做post(new Runnable() {run() {listview.setSelection(pos);原创 2013-06-05 16:34:52 · 23591 阅读 · 7 评论 -
android widget无法点击问题
RemoteViews views = new RemoteViews(mContext.getPackageName(), R.layout.widget);view.setXXXX();PendingIntent pendingIntent = PendingIntent.getActivity(mContext, 0, intent, 0);views.setOnClickPen原创 2012-12-12 12:02:39 · 6363 阅读 · 0 评论 -
Eclipse设置每行行数
preferences-Java-Code Style-Formatter-Edit-Line Wrapping原创 2012-12-12 14:42:49 · 4645 阅读 · 0 评论 -
ScrollView嵌入HorizontalScrollView后滑动卡顿问题
经常会有这种需求, 需要将一个HorizontalScrollView嵌入到一个ScrollView中, 实现既可以水平滚动, 又可以垂直滚动,但是这样发现水平滚动十分卡顿, 几乎不能使用, 原因是水平滚动事件被ScrollView消耗掉了, 这样需要重写ScrollView, 如下:public class QScrollView extends ScrollView{ private f原创 2012-12-11 11:05:05 · 4296 阅读 · 1 评论 -
可展开的TextView
比如做上面这个效果, 点击详情后TextView展开显示所有的内容, 可以通过调用TextView.setMaxLines()来实现开始时设置setMaxLines(2), 只显示两行, 当点击“详情”按钮后, 设置setMaxLines(100), 一个肯定可以显示所有内容的数字即可原创 2012-12-11 10:56:41 · 4336 阅读 · 6 评论 -
android显示通知栏
public static void showNotification() { try { Object service = getSystemService("statusbar"); if (service != null) { Method expand = service.getClass().getMethod("expand"); expand.invo原创 2012-09-11 17:15:29 · 2517 阅读 · 0 评论 -
Android ListView动画注意事项
ListView一个特点就是会对view重用, 所以在对每个itemview做动画时, 在做完动画后, 一定要itemview.clearAnimation(), 清除掉这个view上的动画, 否则会由于view重用导致各种奇怪的问题...比如在做滑动删除某个item的动画时, 动画结束后一定要调用item.clearAnimation()原创 2012-09-05 15:37:56 · 1880 阅读 · 0 评论 -
android布局属性详解
android:id 为控件指定相应的IDandroid:text 指定控件的文本,置尽量使用strings.xmlandroid:grivity 指定控件的基本位置 ,比如举重,居右,android:padding 指定控件的内边距,控件当中的内容android:singleLine 如果设转载 2012-09-05 11:38:46 · 599 阅读 · 0 评论 -
Android中在Activity之间传递数据的另一种方法, 使用application context
在Android中编写过程序的开发人员都知道。在Activity、等组件之间传递数据(尤其是复杂类型的数据)很不方便。一般可以使用Intent来传递可序列化或简单类型的数据。看下面的代码。 Intent intent = new Intent(this, Test.class); intent.putExtra("param1", "data1"); intent.put转载 2012-08-21 14:31:58 · 5665 阅读 · 0 评论 -
Application中的Context和Activity中的Context区别
网上搜集的, 没做梳理, 有点乱1.Application的Context是一个全局静态变量,SDK的说明是只有当你引用这个context的生命周期超过了当前activity的生命周期,而和整个应用的生命周期挂钩时,才去使用这个application的context。一种推荐的用法就是应用程序注册广播broadcast时,使用这个context。引用applic转载 2012-08-21 14:12:12 · 6360 阅读 · 3 评论 -
Android获取String的MD5值
/** * 将字符串转成MD5值 * * @param string * @return */ public static String stringToMD5(String string) { byte[] hash; try { hash = MessageDigest.getInstance("MD5").digest(string.getBytes(原创 2012-12-12 14:31:32 · 20385 阅读 · 0 评论 -
android:layout_gravity="bottom"不起作用问题
布局layout时, 发现设置了android:layout_gravity="bottom"后view并没有底对齐, 查了下, 原来如下:对于 LinearLayout当 android:orientation="vertical" 时, 只有水平方向的设置才起作用,垂直方向的设置不起作用。即:left,right,center_horizontal 是生效的。当 andr原创 2012-12-13 15:19:18 · 21970 阅读 · 12 评论 -
AsyncTask使用详细说明
AsyncTask使用: 在开发Android应用时必须遵守单线程模型的原则: Android UI操作并不是线程安全的并且这些操作必须在UI线程中执行。在单线程模型中始终要记住两条法则: 1. 不要阻塞UI线程 2. 确保只在UI线程中更新界面 当一个程序第一次启动时,Android会同时启动一个对应的主线程(Main Thread),主线程主要负责处理与UI相关的事件原创 2012-12-26 10:24:26 · 10278 阅读 · 1 评论 -
android给listview的item设定高度
在item的layout文件中,用android:layout_height设置item的高度。运行,高度设置无效。解决办法:给item设定minHeight,即可.---------------------------------------最近一直纠结于ListView中每个Item中高度的问题,在网上只找出一个方法,就是在每个item里面加入图转载 2013-05-15 12:01:08 · 1468 阅读 · 1 评论 -
为什么ListView.setOnItemClickListener、setOnCreateContextMenuListener会无效
如果ListView中的单个Item的view中存在checkbox,button等view,会导致ListView.setOnItemClickListener无效,事件会被子View捕获到,ListView无法捕获处理该事件.解决方法:在checkbox、button对应的view处加android:focusable="false" android:click转载 2013-05-14 09:30:47 · 1254 阅读 · 0 评论 -
showDialog()、onPrepareDialog()和onCreateDialog()的关系 .
Activities提供了一种方便管理的创建、保存、回复的对话框机制,例如 onCreateDialog(int), onPrepareDialog(int, Dialog), showDialog(int), dismissDialog(int)等方法,如果使用这些方法的话,Activity将通过 getOwnerActivity()方法返回该Activity管理的对话框(dialog).转载 2013-05-20 15:18:59 · 1667 阅读 · 0 评论 -
APK包反编译
APK包反编译一.反编译apk得到Java源码1.首先下载需要的两个工具dex2jar和JD-GUIDex2jar:http://laichao.googlecode.com/files/dex2jar-0.0.7-SNAPSHOT.zip JD-GUI:http://laichao.googlecode.com/files/jdgui.zip 下载完后分别解压2.原创 2013-01-04 17:15:02 · 1658 阅读 · 0 评论 -
Intent和IntentFilter详解
Intent Android中提供了Intent机制来协助应用间的交互与通讯,Intent负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将 Intent传递给调用的组件,并完成组件的调用。Intent不仅可用于应用程序之间,也可用于应用程序内部的Activity/Service之间的交互。因此,Intent在原创 2013-01-04 15:23:33 · 82983 阅读 · 17 评论 -
java mkdir()和mkdirs()区别
mkdirs()可以建立多级文件夹, mkdir()只会建立一级的文件夹, 如下:new File("/tmp/one/two/three").mkdirs();执行后, 会建立tmp/one/two/three四级目录new File("/tmp/one/two/three").mkdir();则不会建立任何目录, 因为找不到/tmp/one/two目录, 结果返回fal原创 2013-01-04 11:13:09 · 98681 阅读 · 19 评论 -
Activity的四种加载模式详解(standard singleTop singleTask singleInstance)
activity的四种加载模式在android的多activity开发中,activity之间的跳转可能需要有多种方式,有时是普通的生成一个新实例,有时希望跳转到原来某个activity实例,而不是生成大量的重复的activity。加载模式便是决定以哪种方式启动一个跳转到原来某个Activity实例。在android里,有4种activity的启动模式,分别为: standard, sin原创 2013-01-04 16:54:23 · 7121 阅读 · 1 评论 -
Android避免ANR之StrictMode
从Android 2.3开始提供了一个新的类名为StrictMode可以帮助开发者改进你的Android应用,StrictMode可以捕捉到在UI主线程中的I/O操作或者网络操作, 给出这些操作的耗时供开发者参考, 开发者可以将一些耗时的操作移到worker thread中去做, 减少ANR发生的概率. 使用方式如下, 一般将这段代码放到activity的onCreate()函数中,原创 2012-12-27 17:10:23 · 1667 阅读 · 0 评论 -
Android ListView 去除底色、选中色、阴影
去除ListView滑到顶部和底部时边缘的黑色阴影:Xml代码 android:fadingEdge="none" 去除拖动时默认的黑色背景:Xml代码 android:cacheColorHint="#00000000" 去除选中时的黄色底色:Xml代码 a转载 2012-08-29 11:00:09 · 1142 阅读 · 0 评论 -
android下判断一个应用app是否是系统rom集成的方法
import android.app.Activity;import android.content.pm.ApplicationInfo;import android.content.pm.PackageInfo;import android.content.pm.PackageManager.NameNotFoundException;import android.os.Bundle;转载 2012-08-02 11:23:40 · 7831 阅读 · 0 评论 -
(Android)The currently displayed page contains invalid values 解决方法
这是个简答的问题,但是出现的地方有很多种,其实一共就这两种解决方法,多余的不说,直接说解决方法。1 当项目中遇到时:项目丢失了default.properties这个文件导致的,从别的项目中拷贝一个过来,修改成对应的target即可2 当eclipse遇到时:eclipse版本不兼容adt,导致adt没有下载完全,但eclipse只是禁用了这个adt没有把它卸载掉,"Help" ->转载 2012-08-13 14:37:37 · 2820 阅读 · 0 评论 -
Memory Analysis for Android Applications
[This post is by Patrick Dubroy, an Android engineer who writes about programming, usability, and interaction on his personal blog. — Tim Bray]The Dalvik runtime may be garbage-collected, but that转载 2012-07-06 18:23:32 · 2054 阅读 · 0 评论 -
iOS vs. Android ICS: Hardware Accelerated Graphics Pipelines
Earlier this year, Flipboard developer Charles Ying (@charlietuna) fairly & accurately criticised Android’s immature graphics pipeline & subsequent poor drawing performance.Android’s UX archit转载 2012-07-05 11:59:59 · 1437 阅读 · 0 评论 -
获取屏幕宽度, 高度及Density(显示密度)
/** * 获取屏幕的宽度 * * @return */ public static int getScreenWidth() { WindowManager manage = Launcher.getInstance().getWindowManager(); Display display = manage.ge原创 2012-07-05 20:53:25 · 4225 阅读 · 0 评论 -
Google I/O 2011, Android Accelerated Rendering
http://www.slideshare.net/romainguy/google-io-2011-android-accelerated-rendering转载 2012-07-04 15:44:40 · 1065 阅读 · 0 评论 -
Follow up to “Android graphics true facts”, or The Reason Android is Laggy
Edit: +Dianne Hackborn has written a response to this post. She clarifies things about Android that I got wrong, and fundamentally rejects the thesis of this post by suggesting that the increased se转载 2012-07-05 11:32:36 · 2079 阅读 · 0 评论 -
Painless threading
Whenever you first start an Android application, a thread called "main" is automatically created. The main thread, also called the UI thread, is very important because it is in charge of dispatching t转载 2012-07-04 15:00:00 · 634 阅读 · 0 评论 -
Best Practices for User Interfaces
http://developer.motorola.com/docs/Best_Practices_for_User_Interfaces/转载 2012-07-04 14:36:37 · 496 阅读 · 0 评论 -
How about some Android graphics true facts
How about some Android graphics true facts?(Edit: there have been a number of comments treating this as being written as an excuse for Android or not mattering to users or such. I'd just like to c转载 2012-07-04 16:11:49 · 841 阅读 · 0 评论 -
Robolectric: Test-Drive Your Android Code
http://pivotal.github.com/robolectric/转载 2012-07-04 15:49:10 · 737 阅读 · 0 评论 -
This attribute must be localized错误
eclipse中编译没有问题,但是在make自己建立的项目的时候,提示了错误“This attribute must be localized”,这种问题一般情况是因为在res/xml文件夹下的中或者在res/layout下的文件中出现了没有多语言话的文本例如android:id="@+id/myTextView1"android:text="type"android:la原创 2012-07-10 17:53:30 · 7260 阅读 · 0 评论 -
android设置Activity背景透明
1.如果设置成完全透明在Manifest.xml中给要设置成背景透明的acticity增加属性:android:theme="@android:style/Theme.Translucent" 2.如果想把背景设置成某个颜色(1)在/value目录下增加文件color.xml#50ffffff(2)在/value目录下增加文件style.xml@原创 2012-06-30 16:41:43 · 2873 阅读 · 0 评论 -
android设置activity全屏 | 无标题
1.设置activity无标题方法一:在Manifest.xml中为activity增加属性: android:theme="@android:style/Theme.NoTitleBar"方法二:在activity的onCreate()中加入:requestWindowFeature(Window.FEATURE_NO_TITLE);2.设置activity全屏原创 2012-06-30 17:05:57 · 13698 阅读 · 0 评论 -
10种技巧可提升Android应用运行效果
随着手机平台的发展和所提供应用的提升,质量成为应用成功的最重要因素。如果那些应用无法提供强大的功能和稳定的用户体验,那就会很快被用户卸载。开发者需要记住的是,虽然Android智能手机和平板电脑的速度日益提升,但其应用仍然运行在资源有限的环境中,其电池及处理器性能与最新的台式电脑、手提电脑仍存在差距。以下是某些优化应用运行效果的方法:我们先来阐述某些让应用反应灵敏的编程技巧。技巧1:从转载 2012-08-03 09:30:02 · 1058 阅读 · 0 评论 -
获取android手机信息
//BOARD 主板String phoneInfo = "BOARD: " + android.os.Build.BOARD;phoneInfo += ", BOOTLOADER: " + android.os.Build.BOOTLOADER;//BRAND 运营商phoneInfo += ", BRAND: " + android.os.Build.BRAND;phoneInfo转载 2012-08-01 16:29:16 · 13210 阅读 · 0 评论 -
Android获取两个日期之间间隔的天数
/** * 获取两个日期之间的间隔天数 * @return */ public static int getGapCount(Date startDate, Date endDate) { Calendar fromCalendar = Calendar.getInstance(); fromCalendar.setTime(startDate);原创 2012-07-15 11:51:06 · 11513 阅读 · 0 评论 -
命令行下查看android sqlit3数据库信息
找到adb, 一般位于android sdk的的tools/(老版本)或者 platform-tools/ (新版本) ,如果没有后者,则可以通过 SDK and AVD Manager 来安装 "Android SDK Platform-tools", 本文 为例: 该工具位于 /data/software/android-sdk-linux_x86/platform-tools/2.转载 2012-07-15 10:25:13 · 4221 阅读 · 1 评论