![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
android开发
文章平均质量分 59
伤花怒放-Xin
这个作者很懒,什么都没留下…
展开
-
android中使用startActivityForResult回传数据
假设:我这里有两个Activity:A和B,从A中向B中传递数据的时候采用的是Bundle封装数据,然后从A中跳转到B中,当B有需求将数据封装起来回传给A并跳转回A。那么A中接收数据时还要先判断Bundle是否为空,因为第一次访问A的时候(即B还没有回传的时候),Bundle是为空的,这样显然是比较麻烦的,不明智的做法。 还好startActivityForResult来做跳转给了转载 2013-09-06 10:31:50 · 622 阅读 · 0 评论 -
android 混淆文件proguard.cfg详解
-injars androidtest.jar【jar包所在地址】 -outjars out【输出地址】-libraryjars 'D:\android-sdk-windows\platforms\android-9\android.jar' 【引用的库的jar,用于解析injars所指定的jar类】 -optimizationpasses 5-dontu转载 2013-10-24 15:28:16 · 956 阅读 · 0 评论 -
Android面试题
1.下列哪些语句关于内存回收的说明是正确的? (b )A、程序员必须创建一个线程来释放内存B、内存回收程序负责释放无用内存C、内存回收程序允许程序员直接释放内存D、内存回收程序可以在指定的时间释放内存对象2.下面异常是属于Runtime Exception 的是(abcd)(多选)A、ArithmeticExc转载 2013-10-15 15:19:40 · 581 阅读 · 0 评论 -
AsyncTask的用法
在开发Android应用时必须遵守单线程模型的原则: Android UI操作并不是线程安全的并且这些操作必须在UI线程中执行。在单线程模型中始终要记住两条法则: 1. 不要阻塞UI线程 2. 确保只在UI线程中访问Android UI工具包 当一个程序第一次启动时,Android会同时启动一个对应的主线程(Main Thread),主线程主要负责处理与UI相关的事件,如:转载 2013-10-15 10:52:21 · 373 阅读 · 0 评论 -
Android Looper和Handler
Message:消息,其中包含了消息ID,消息处理对象以及处理的数据等,由MessageQueue统一列队,终由Handler处理。Handler:处理者,负责Message的发送及处理。使用Handler时,需要实现handleMessage(Message msg)方法来对特定的Message进行处理,例如更新UI等。MessageQueue:消息队列,用来存放Handler发转载 2013-10-15 11:20:03 · 419 阅读 · 0 评论 -
android之Fragment
Fragment要点Fragment作为Activity界面的一部分组成出现可以在一个Activity中同时出现多个Fragment,并且,一个Fragment亦可在多个Activity中使用。在Activity运行过程中,可以添加、移除或者替换Fragment(add()、remove()、replace())Fragment可以响应自己的输入事件,并且有自己的生命周期,当然,它们的转载 2013-09-06 23:31:34 · 659 阅读 · 0 评论 -
Android自定义View之一
Android自定义View实现很简单继承View,重写构造函数、onDraw,(onMeasure)等函数。如果自定义的View需要有自定义的属性,需要在values下建立attrs.xml。在其中定义你的属性。在使用到自定义View的xml布局文件中需要加入xmlns:前缀="http://schemas.android.com/apk/res/你的自定义View所在的转载 2013-09-06 10:49:59 · 583 阅读 · 0 评论 -
Android ListView无法触发ItemClick事件
无法触发OnItemClick事件.-----------------根据以往的经验,想到了子控件里拦截了父控件的Click事件,因为很早以前就看到过这样的描述: 如果你的自定义ListViewItem中有Button或者Checkable的子类控件的话,那么默认focus是交给了子控件,而ListView的Item能被选中的基础是它能获取Focus,也就是说我们可以通过将转载 2013-09-06 10:46:39 · 983 阅读 · 0 评论 -
Android 关于inflate
通俗的说,inflate就相当于将一个xml中定义的布局找出来. 因为在一个Activity里如果直接用findViewById()的话,对应的是setConentView()的那个layout里的组件. 因此如果你的Activity里如果用到别的layout,比如对话框上的layout,你还要设置对话框上的layout里的组件(像图片ImageView,文字TextV转载 2013-09-06 11:06:59 · 570 阅读 · 0 评论 -
Android利用canvas画各种图形(点、直线、弧、圆、椭圆、文字、矩形、多边形、曲线、圆角矩形)
1、首先说一下canvas类:Class OverviewThe Canvas class holds the "draw" calls. To draw something, you need 4 basic components: A Bitmap to hold the pixels, a Canvas to host the draw calls (writing in转载 2013-09-06 10:48:30 · 554 阅读 · 0 评论 -
Android在listview添加checkbox实现单选多选操作问题
在 android 某些开发需求当中,有时候需要在listveiw中加入checkbox实现单选,多选操作。表面上看上去只是改变checkbox那么简单,然而实际开发中,实现起来并不是那么得心应手。尤其当listview比较多(比如屏幕最多只能显示10个item,但总共有12个item,也就是说listview的item数大于屏幕能够显示的item数)滑动屏幕的时候,由于适配器中getview()转载 2013-09-06 10:39:54 · 2370 阅读 · 0 评论 -
android获取屏幕宽度和高度
protected void onSizeChanged(int w, int h, int oldw, int oldh) {super.onSizeChanged(w, h, oldw, oldh);width=w;height=h;height_level=height/6;System.out.println(""+width + "-----" + height);原创 2013-09-06 16:39:44 · 873 阅读 · 0 评论 -
Android—Animation的使用
一.Animation简介1.简介 Animation为Android提供了一系列的动画效果:旋转、缩放、移动、淡入淡出,这些动画效果可以应用于绝大多数控件。2.分类Animation可分为两类: TweenedAnimations:渐变动画,具体就是旋转、缩放、移动、淡入淡出效果。 Frame-by-FrameAnimations:将一系列D转载 2013-09-06 15:50:39 · 608 阅读 · 0 评论 -
Android读取txt的方法
1、放入到资源文件夹里面,也就是所创建android工程的res下面。我们可以在里面建立文件夹,放置我们要读取的文件。 例如:res里面建立目录raw,将要读取的文件abc.bin放入到该文件夹下,此时通过 openRawResource()方法即可读取。代码为InputStream is = getResources().openRawResource(R.raw.abc); 只要获转载 2013-09-06 10:58:58 · 875 阅读 · 0 评论 -
如何成为Android高手第三篇
避免建立对象世界上没有免费的对象。虽然GC为每个线程都建立了临时对象池,可以使创建对象的代价变得小一些,但是分配内存永远都比不分配内存的代价大。如果你在用户界面循环中分配对象内存,就会引发周期性的垃圾回收,用户就会觉得界面像打嗝一样一顿一顿的。所以,除非必要,应尽量避免尽力对象的实例。下面的例子将帮助你理解这条原则:当你从用户输入的数据中截取一段字符串时,尽量使用s转载 2013-09-06 10:54:12 · 590 阅读 · 0 评论 -
如何成为Android高手第二篇
三:编写可重用、可扩展、可维护、灵活性高的代码Android应用程序的开发是使用Java编写,在架构上使用MVC,鼓励组件之间的若耦合。开发出编写可重用、可扩展、可维护、灵活性高的代码需要经历遵循以下原则:l "开-闭"原则(OCP):一个软件实体应当对扩展开放,对修改关闭。这个原则说的是,在设计一个模块的时候,应当使这个模块可以在不被修改的前提下被扩展。换言之,应当可以在不必修改转载 2013-09-06 10:53:02 · 517 阅读 · 0 评论 -
如何成为Android高手第一篇
若立志成为Android高手,如有耐心,“一瓶一钵足矣”。 “天下事有难易乎?为之,则难者亦易矣;不为,则易者亦难矣。人之为学有难易乎?学之,则难者亦易矣;不学,则易者亦难矣。”想成为Android高手?这可不是想象中写几行代码那么容易的事情,但也不是不可实现。 如何做? 1,学会懒惰!奇怪吧?但是,你一定也听说过和感受过这个世界某种程度上是由懒人推动的,生命在于懒转载 2013-09-06 10:51:08 · 557 阅读 · 0 评论 -
对android应用进行代码混淆
今天研究了一下,android应用的代码混淆过程。具体步骤如下: 1.在编写完代码之后,要在project.properties文件中加入一行代码:proguard.config=proguard.cfg。 2.同时吧文件proguard.cfg文件导入进项目里面。 3.选择如下 4.继续选择签名文原创 2013-10-21 16:11:17 · 514 阅读 · 0 评论