android进阶
文章平均质量分 68
月亮弯弯2013
android developer
展开
-
[Accessibility] Missing contentDescription attribute on image .
今天使用了下ADT 16.0 在定义一个ImageVIew的时候 总是提示这个[Accessibility] Missing contentDescription attribute on image警告,虽说可以不理 但总是感觉怪怪的,在网上一搜 发现原来这是ADT 16.0的新特性,在一些没有文本显示的控件里,如imageView和imageButton等,ADT会提示你定义一个andro转载 2014-03-10 18:18:31 · 712 阅读 · 0 评论 -
Intent的用法(一),启动activity传递数据以及startActivityForResult .
Intent很神奇.可以用Intent来启动新的Activity,启动广播,启动服务,发送数据........太多了.这里介绍下,使用Intent启动新的Activity,传递数据,以及startActivityForResult()方法的使用.我们这里有两个Activity,MainActivity.java和OtherActivity.java. 我们需要做的是,点击Butto翻译 2014-03-10 19:28:21 · 1137 阅读 · 0 评论 -
Android MediaStore
MediaStore这个类是android系统提供的一个多媒体数据库,android中多媒体信息都可以从这里提取。这个MediaStore包括了多媒体数据库的所有信息,包括音频,视频和图像,android把所有的多媒体数据库接口进行了封装,所有的数据库不用自己进行创建,直接调用利用ContentResolver去掉用那些封装好的接口就可以进行数据库的操作了。今天我就介绍一些这些接口的用法。原创 2014-03-10 20:37:34 · 1018 阅读 · 0 评论 -
Android声明周期
Activity 的生命周期和 J2ME 的 MIDlet 一样,在 android 中,Activity 的生命周期交给系统统一管理。与 MIDlet 不同的是安装在 android 中的所有的 Activity 都是平等的。Activity 的状态及状态间的转换在 android 中,Activity 拥有四种基本状态:Active/Runing一个新 Ac原创 2014-03-12 21:45:07 · 843 阅读 · 0 评论 -
退出Android应用程序
1. finish()方法该方法可以结束当前 Activity,但是如果你的 App 有很多 Activity 的话,使用该方法显得有点捉襟见肘了。另外,还有一个方法 finishActivity (int requestCode) ,关于这个方法,先看看 sdk 的 api 说明吧!public void finishActivity (int requestCode)S翻译 2014-03-12 21:20:21 · 780 阅读 · 0 评论 -
UI ActionBar
Action bar是一个标识应用程序和用户位置的窗口功能,并且给用户提供操作和导航模式。在大多数的情况下,当你需要突出展现用户行为或全局导航的activity中使用action bar,因为action bar能够使应用程序给用户提供一致的界面,并且系统能够很好根据不同的屏幕配置来适应操作栏的外观。你能够用ActionBar的对象的API来控制操作栏的行为和可见性,这些API被添加在Andr翻译 2014-03-13 15:14:07 · 897 阅读 · 0 评论 -
使用PopupWindow和Activity两种不同的方式实现弹窗效果
分别使用PopupWindow和Activity两种不同的方式来实现仿微信顶部标题栏弹窗的这样一个效果。一、实现效果图这里为了演示方便,我将两种方法放在一个应用程序中演示,这个是主界面虽然两种实现的方式不一样,但是最终的效果图都是差不多的二、项目结构图三、详细的编码实现3.1 主界面的实现为了演示方便,我这里把原创 2014-03-13 15:28:18 · 1156 阅读 · 1 评论 -
could not write file .project
android的3D图360度全景图时,从http://code.google.com/p/panoramagl-android/downloads/list网站下载了现有的demo,导入到Eclipse中后选择了相应的API后,红叉的项目错误没有了。 工程列表也无任何错误了。但出现了这样的提示框错误说明的是.classpath这个环境文件不能写。随后,查看工程文件主目录下的.classp原创 2014-03-16 17:58:00 · 2355 阅读 · 0 评论 -
POST和GEST 数据限制方面的问题
一、问题起因在某项目释放后Bug统计的附件《释放后问题》里有: 问题 原因 分析 备注 CSV处理时,如果处理的主题数过多,发生URL参数上限的错误; 可变长度的参数通过URL方式传递,会造成这种潜在的错误发生。 1、属于2次发生问题,开发方面没有及时通过checklist等方式向组员传达相关注意事项;2、测试时没有作大批量数据的测试; 1、作为经验添加至CheckList中,翻译 2014-03-15 13:55:33 · 1632 阅读 · 0 评论 -
Android COLLATE LOCALIZED ASC
COLLATE LOCALIZED ASC的使用,android技术文章通常我们的联系人查询需要按名字进行排序,可以加上以下的排序语句,意思是,按本地语言进行排序ContactsContract.Contacts.DISPLAY_NAME + " COLLATE LOCALIZED ASC原创 2014-04-18 20:44:56 · 2236 阅读 · 0 评论 -
android
dip: device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA、HVGA和QVGA 推荐使用这个,不依赖像素。 px: pixels(像素). 不同设备显示效果相同,一般我们HVGA代表320x480像素,这个用的比较多。 pt: point,是一个标准的长度单位,1pt=1/72英寸,用于印刷业,原创 2014-04-06 11:12:15 · 769 阅读 · 0 评论 -
Android中TextView自动连接网址
2010-08-Android中TextView自动连接网址Android中TextView自动连接网址TextView.setText()不支持HTML TAG的输出,所以即便写成:myTextView.setText("有问题找度娘");在是实际输出时,也就是纯文本而已,并不会做HTML TAG的转换。但若撇开HTML TAG之外,在xml文件中的标签中原创 2014-04-07 18:32:53 · 1002 阅读 · 0 评论 -
同步手机真机屏幕到PC上的软件使用方法
1 简介 一款同步手机真机屏幕到PC上的软件(屏幕实时抓取,有点小卡)2 开源地址 http://code.google.com/p/android-screen-monitor/3 使用步骤① 通过USB将你的手机连接到电脑② 将asm.jar文件拷贝到你的android-sdk的platform-tools下,如我的E:\android\转载 2014-06-11 14:15:04 · 1050 阅读 · 0 评论 -
Android开发 将数据保存到SD卡
使用Activity的openFileOutput()方法保存文件,文件是存放在手机空间上,一般手机的存储空间不是很大,存放些小文件还行,如果要存放像视频这样的大文件,是不可行的。对于像视频这样的大文件,我们可以把它存放在SDCard。 SDCard是干什么的?你可以把它看作是移动硬盘或U盘。 在模拟器中使用SDCard,你需要先创建一张SDCard卡(当然不是真的SDCard,只是镜像文件)。创建SDCard可以在Eclipse创建模拟器时随同创建,也可以使用DOS命令进行创建,如下: 在Dos窗原创 2014-07-29 15:53:16 · 1237 阅读 · 0 评论 -
Android记住密码后自动登录
分享一个自动登录的Demo原创 2014-07-31 17:55:55 · 1564 阅读 · 0 评论 -
Android自定义RatingBar(评分控件)
RatingBar简单介绍 RatingBar是基于SeekBar(拖动条)和ProgressBar(状态条)的扩展,用星形来显示等级评定,在使用默认RatingBar时,用户可以通过触摸/拖动/按键(比如遥控器)来设置评分, RatingBar自带有两种模式 ,一个小风格 ratingBarStyleSmall,大风格为ratingBarStyleIndicator,大的只适合做指转载 2014-09-26 11:01:13 · 2327 阅读 · 0 评论 -
Android之Button自定义点击效果
我们在界面上经常会用到button按钮,但通常button点击后看不到点击的效果,如果用户连续点击了两次,就会报NAR错误,这样交互性就比较差了。如果我们自定义了button点击效果,比如我们点击了button能让我们看到我们确实点击了button按钮,这样就会有效的避免重复点击了。 自定义点击效果有两种方式,一种是在xml中定义,另一种是在代码中定义。转载 2014-09-27 15:23:31 · 854 阅读 · 0 评论 -
android.view.InflateException: Binary XML file 解决方案
android.view.InflateException: Binary XML file line #2: Error inflating class 的解决方法java.lang.RuntimeException: Unable to start activity ComponentInfo{cn.xs8.app/cn.xs8.app.activity.news.Xs8_News原创 2014-09-28 16:55:38 · 1823 阅读 · 1 评论 -
android编程:解决异常“android.view.InflateException: Binary XML file line # : Error inflating class”
抛出异常时的main.xml与自定义View类相关代码如下:main.xml继承View的类Chessboard.java: 对于此异常,如下进行修改:添加View类的另一个构造方法 如上,问题解决了。。。转载 2014-09-28 11:13:07 · 988 阅读 · 0 评论 -
Android获取网络连接状态(3G/Wifi)及调用网络配置界面
获取网络连接状态随着3G和Wifi的推广,越来越多的Android应用程序需要调用网络资源,检测网络连接状态也就成为网络应用程序所必备的功能。Android平台提供了ConnectivityManager 类,用于网络连接状态的检测。Android开发文档这样描述ConnectivityManager 的作用: Class that answers que原创 2014-10-07 10:16:05 · 949 阅读 · 0 评论 -
Android控件源码分析--AndroidResideMenu菜单
早上看到一篇文章介绍了ResideMenu得使用,这是一个类似SlidingMenu的控件,感觉有点高尚大,反正我之前没见过,本着凑热闹的好奇心,立马clone把玩下,项目地址奉上:https://github.com/SpecialCyCi/AndroidResideMenu.git 原理概述在分析源代码之前,简单谈谈,这个效果在这里是如何实现的。点击按钮画面缩小为50%转载 2014-09-29 19:32:42 · 771 阅读 · 0 评论 -
pull解析和sax解析的区别
如果在一个XML文档中我们只需要前面一部分数据,但是使用SAX方式或DOM方式会对整个文档进行解析,尽管XML文档中后面的大部分数据我们其实都不需要解析,因此这样实际上就浪费了处理资源。使用PULL方式正合适。 Pull解析器和SAX解析器虽有区别但也有相似性。他们的区别为:SAX解析器的工作方式是自动将事件推入注册的事件处理器进行处理,因此你不能控制事件的处理主动结束;而Pull解原创 2014-10-25 08:19:36 · 2455 阅读 · 0 评论 -
android rawquery和query的比较
Cursor cursor = db.rawQuery("select name from *** where id=?", new String[]{"1"});Cursor cursor = db.query("***", new String[]{"name"}, "id=?", new String[]{"1"}, null, null, null);上面是两个分别是query原创 2014-10-26 17:32:17 · 7592 阅读 · 1 评论 -
Android内存管理
首先Android内存管理机制相当复杂,想要讲清楚比较困难;其次对于绝大多数用户来说,只关心内存够不够用,至于内存如何管理的这种技术细节,不是用户需要去考虑的,写这样一个专题有没有意义?毕竟我们是用手机,不是来研究手机的。最后的顾虑是这个专题会不会太技术化了,绝大部分用户不会看或者说缺乏相应的背景。但是有一种激励促使着我去写这样一个专题,一直以来,MIUI团队在与用户互动的过程中也同时在向用户学习原创 2014-10-26 10:39:13 · 1627 阅读 · 0 评论 -
dom解析和sax解析
解析xml有四种方法:DOM,SAX,DOM4j,JDOM. 我们主要学了两种:DOM和SAX. DOM适于解析比较简单的XML而SAX则适于解析较复杂的XML文件。各有各的好。 DOM和SAX的不同: 1. DOM是基于内存的,不管文件有多大,都会将所有的内容预先装载到内存中。从而消耗很大的内存空间。而SAX是基于事件的。当某个事件被触发时,才原创 2014-10-25 08:22:45 · 1960 阅读 · 0 评论 -
Android开源界面库--ResideMenu用法
网上关于ResideMenu用法的教程很多,但基本上全是从Github上copy下来的,Gitbub上给出的了对应的demo,但是由于我的IDE原因吧,demo一直导入不成功。为此自己又捣鼓了一翻,终于运行成功ResideMenu的真容。 说转载 2014-09-30 11:25:29 · 1370 阅读 · 0 评论 -
android visible invisible和gone的区别
android中UI应用的开发中经常会使用view.setVisibility()来设置控件的可见性,其中该函数有3个可选值,他们有着不同的含义:View.VISIBLE--->可见View.INVISIBLE--->不可见,但这个View仍然会占用在xml文件中所分配的布局空间,不重新layout View.GONE---->不可见,但这个View在ViewGroup中不保留位置原创 2014-10-28 21:14:38 · 1394 阅读 · 0 评论 -
Android HttpClient
超文本传输协议(HTTP)也许是当今互联网上使用的最重要的协议了。Web服务,有网络功能的设备和网络计算的发展,都持续扩展了HTTP协议的角色,超越了用户使用的Web浏览器范畴,同时,也增加了需要HTTP协议支持的应用程序的数量。尽管java.net包提供了基本通过HTTP访问资源的功能,但它没有提供全面的灵活性和其它很多应用程序需要的功能。HttpClient就是寻求弥补这项空白的组件,原创 2014-10-29 12:39:41 · 1415 阅读 · 0 评论 -
android 卸载程序、清除数据、停止服务使用方法
要实现卸载程序、清除数据、停止正在运行的服务这几大模块,现在将代码粗略总结如下: 主要运用到的类有 PackageManager ActivityManager ApplicationInfo RunningServiceInfo Method 还有两个android.pm下的源文件用于生成桩,IPackageStatsObserver.java 和原创 2014-11-13 15:50:05 · 3941 阅读 · 2 评论 -
Android TabActivity使用方法
TabActivity 首先Android里面有个名为TabActivity来给我们方便使用。其中有以下可以关注的函数: public TabHost getTabHost () 获得当前TabActivity的TabHost public TabWidget getTabWidget () 获得当前TabActivity 的TabWidget public voi原创 2014-11-14 15:34:30 · 2760 阅读 · 0 评论 -
Android 显示意图和隐式意图的区别
意图在android的应用开发中是很重要的,明白了意图的作用和使用后,对开发会有很大帮助。如果没有把意图搞懂,以后开发应用会感觉缺些什么。 意图的作用: 1、激活组件 2、携带数据 3、意图的匹配(运用到隐式意图) android基本的设计理念是鼓励减少组件间的耦合,因此android提供了Intent(意图)原创 2014-10-28 17:36:28 · 1919 阅读 · 0 评论 -
android selector失效的原因
问题重现:使用selector,期望按下按钮时 Button 图片变色,代码如下: android:id="@+id/btn_match" style="@style/DashboardButton" android:drawableTop="@drawable/btn_match" android:t翻译 2014-11-15 12:18:26 · 1456 阅读 · 0 评论 -
onAttachedToWindow () 和 onDetachedFromWindow () ; 以及更新视图的函数ondraw() 和dispatchdraw()的区别
protected void onAttachedToWindow() This is called when the view is attached to a window. At this point it has a Surface and will start drawing. Note that this function is guaranteed to be ca转载 2014-10-03 19:20:21 · 939 阅读 · 0 评论 -
Android Fragment和Activity的交互介绍
Fragment和Activity的交互 一个Fragment的实例总是和包含它的Activity直接相关。 fragment可以通过getActivity() 方法来获得Activity的实例,然后就可以调用一些例如findViewById()之类的方法。 如: View listView = getActivity().findViewById(R.id原创 2014-11-16 11:16:13 · 1741 阅读 · 1 评论 -
Android布局控件之LinearLayout
LinearLayout是线性布局控件,它包含的子控件将以横向或竖向的方式排列,按照相对位置来排列所有的widgets或者其他的containers,超过边界时,某些控件将缺失或消失。因此一个垂直列表的每一行只会有一个widget或者是container,而不管他们有多宽,而一个水平列表将会只有一个行高(高度为最高子控件的高度加上边框高度)。LinearLayout保持其所包含的widget或者是转载 2014-10-05 20:07:02 · 1104 阅读 · 0 评论 -
Android ecludeFromRecents
activity属性设置大全 android:allowTaskReparenting=["true"|"false"] 是否允许activity更换从属的任务,比如从短信息任务切换到浏览器任务。 android:alwaysRetainTaskState=["true"|"false"] 是否保留状态不变,比如切换回home,再从新打开,a原创 2014-11-06 09:12:14 · 1162 阅读 · 0 评论 -
Android 剪贴板操作方法在不同版本API下的使用
在SDK11之前请使用android.text.ClipboardManager Java代码 import android.text.ClipboardManager; …… ClipboardManager clipboardManager = (ClipboardManager)getSystemService(Context.CLI原创 2015-02-05 10:51:11 · 1655 阅读 · 1 评论 -
Android android:persistentDrawingCache的几个默认属性值介绍
android:persistentDrawingCache (Google官方译文) Defines the persistence of the drawing cache. The drawing cache might be enabled by a ViewGroup for all its children in specific situations (for insta原创 2015-02-05 09:56:59 · 2105 阅读 · 0 评论 -
Android:Android4.2中,RelativeLayout视图出现了4种新的参数,像layout_alignStart
为什么这个layout_alignStart比layout_alignRight和layout_toLeftOf更好?新增的参数主要是为了适配一些从右到左阅读习惯的地区。比如你要适配阿拉伯语的时候,start就代表右边,中文就是左边。也就是说当我用start来设定的时候,如果显示的汉语,这个start代表左边;如果显示阿拉伯语,这个start代表右边原创 2015-02-05 11:42:00 · 2810 阅读 · 0 评论 -
Android postInvalidate()实现界面刷新
Android提供了Invalidate方法实现界面刷新,但是Invalidate不能直接在线程中调用,因为他是违背了单线程模型:Android UI操作并不是线程安全的,并且这些操作必须在UI线程中调用。 invalidate()是用来刷新View的,必须是在UI线程中进行工作。比如在修改某个view的显示时,调用invalidate()才能看到重新绘制的界面。invalidate(翻译 2015-02-05 12:04:16 · 1480 阅读 · 0 评论