
android开发
文章平均质量分 63
黑洞之外
欢迎大家关注我的博客,在这里我将与大家一起学习,一起探讨学习中遇到的问题。
展开
-
json和xml的比较
1.json和xml的区别比较1.定义介绍(1).XML定义扩展标记语言 (Extensible Markup Language, XML) ,用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。 XML使用DTD(document type definition)文档类型定义来组织数据;格式统一转载 2015-08-12 10:43:32 · 384 阅读 · 0 评论 -
为应用添加多个Activity与参数传递
Intent的两个作用:Intent(意图)----->激活组件(Activity),附带数据(即是传参数)。意图作用之一:激活组件Activity的几种方式:1>public void openActivity(View v) {Intent intent = new Intent();intent.setClass(this,OtherActivity.class);/原创 2015-09-12 09:30:42 · 385 阅读 · 0 评论 -
Activity的四种启动模式(LaunchMode)
1>standard默认模式,每次激活Activity时都会创建Activity实例,并放入任务栈中。2>singleTop如果在任务的栈顶刚好存在该Activity的实例,就重用该实例(会由系统调用实例的onNewIntent()),否则就会创建新的实例并放入栈顶(注:即使栈中已经存在该Activity的实例,只要不在栈顶,都会创建实例)3>singleTask如果栈中已经有原创 2015-09-12 11:09:05 · 523 阅读 · 0 评论 -
Intent深入解剖
Intent提供了一种通用的消息系统,它允许在你的应用程序和其他的应用程序间传递Intent来执行动作和产生事件。使用Intent可以激活Android应用三种类型的核心组件:活动,服务,和广播接收者。Intent可以划分为显式意图和隐式意图。显式意图:调用Intent.setComponent()\Intent.setClassName()\Intent.setClass()明确指定原创 2015-09-12 16:36:42 · 339 阅读 · 0 评论 -
开启线程的三种方式
1.继承Threadpublic class java_thread extends Thread{ public static void main(String args[]) { (new java_thread()).run(); System.out.println("main thread run原创 2015-09-29 21:17:01 · 518 阅读 · 0 评论 -
Activity的生命周期
Activity在运行时会受到一些突然事件的影响,例如:你正在使用一个Activity,突然来了一个电话,这是你的应用就要具备处理这些突发事件的能力,要处理这些突发事件,就要用到Activity的生命周期。Activity有三种状态:运行状态,暂停状态,停止状态。当从一种状态转变到另一种状态时,会调用以下保护方法来通知这种变化:void onCreate(Bundle savedIns原创 2015-09-12 18:09:55 · 301 阅读 · 0 评论 -
Activity生命周期之屏幕切换与应用的响应性
横竖屏幕切换:默认情况下,当"屏幕方向"或"键盘显示隐藏"变化时都会销毁当前Activity,创建新的Activity。如果不希望创建新的Activity实例,可以按如下配置Activity:上面的android:configChanges属性指定了要捕获"屏幕方向"和"键盘显示隐藏"变化,当捕获到这些变化后会调用Activity的onConfigurationChanged()方法。原创 2015-09-13 11:22:58 · 343 阅读 · 0 评论 -
采用广播接收者拦截外拨电话及其特性
拦截外拨电话向外拨打电话时系统化发出一个有序广播,虽然该广播最终会被拨号器里的广播接收者所接收并实现电话拨打,但我们可以在广播传递给拨号广播接收者之前先得到该广播,然后和清除传递给拨号广播接收者的电话号码,在拨号广播接收者接收到该广播时,由于电话号码为null,因此取消电话拨打。public class PhoneBroadcastReceiver extends BroadcastRec原创 2015-09-15 16:15:16 · 655 阅读 · 0 评论 -
服务的生命周期
原创 2015-10-20 19:44:22 · 388 阅读 · 0 评论 -
建立能与访问者相互通信的本地服务
通过startService()和stopService()启动关闭服务。适用于服务和访问这之间没有交互的情况。如果服务和访问者之间需要方法调用或者传递参数,则需要用bindService()和unbindService()方法启动关闭服务。采用Context.bindService()方法启动服务,在服务未被创建时,系统会调用服务的onCreate()方法,接着调用onBind()方原创 2015-10-06 10:55:19 · 297 阅读 · 0 评论 -
使用AIDL和远程服务实现进程通信
在Android中,每个应用程序都有自己的进程,当需要在不同的进程之间传递对象时,该如何实现呢?显然java中是不支持跨进程内存共享的。因此需要传递对象,需要把对象解析成操作系统能够理解的数据格式,已达到跨界对象访问的目的。在JavaEE中,采用RMI通过序列化传递对象。在Android中,则采用AIDL(Android Interface Definition Language:接口定义语言)方原创 2015-10-06 17:43:09 · 291 阅读 · 0 评论 -
实现软件国际化
只需在res文件夹下建一个文件夹即可:如果是英文的话,命名为:values-en,若是中文,则为:values-zh;然后在不同的文件夹下,添加不同语言的文字,然后运行即可即可,然后可以在模拟器上改变语言,发现语言改变之后,软件界面的语言也会随之发生改变。如下图values-zh:strings.xml: 国际化 姓名 添加va原创 2015-10-23 11:37:28 · 967 阅读 · 0 评论 -
(Android)在SQLite中使用事务
举例:转账1> update person set amount = amount-10 where personid = 1;2> update person set amount = amount+10 where personid = 2;1.person.javapackage com.example.domain;public class原创 2015-08-19 15:40:23 · 414 阅读 · 0 评论 -
(Android)创建数据库与完成数据库的增删查改
1.Person .javapackage com.example.domain;public class Person {private Integer id;private String name;private String phone;public Person(){};public Person(String name,String原创 2015-08-19 10:53:21 · 489 阅读 · 0 评论 -
json数据解析
例:json格式如下:{"response":{"data":[{"address":"南京市游乐园","province":"江苏","district":"玄武区","city":"南京"}]},"status":"ok"}希望得到结果是: 江苏 南京 玄武区 南京市游乐园答案:JSONObject dataJson=new JSONObject("你的Json数据“)原创 2015-08-12 10:45:10 · 339 阅读 · 0 评论 -
网络通信之咨询客户端
案例C:酷6网的视频客户端有一个功能:“在手机上显示最新的视频咨询”,视频咨询是从服务器获取的,数据以xml格式返回给Android客户端,然后列表显示在手机上。原理:步骤:——、web端的编写:1.VideoNewService.javapackage cn.edu.hpu.videonews.interFace;impor原创 2015-08-15 10:16:35 · 539 阅读 · 0 评论 -
Android LayoutInflater详解
在实际开发中LayoutInflater这个类还是非常有用的,它的作用类似于findViewById()。不同点是LayoutInflater是用来找res/layout/下的xml布局文件,并且实例化;而findViewById()是找xml布局文件下的具体widget控件(如Button、TextView等)。具体作用:1、对于一个没有被载入或者想要动态载入的界面,都需要使用L翻译 2015-08-15 22:41:37 · 290 阅读 · 0 评论 -
关于popupWindow的dismiss
View contentView = LayoutInflater.from(mContext).inflate(R.layout.popup_win, null, false); popupWindow = new PopupWindow(findViewById(R.id.layout), (int)(winWidth * 1.0), (int)(winHeight * 1.0), t转载 2015-08-15 23:16:31 · 2889 阅读 · 0 评论 -
Android开发PopupWindow showAtLocation用法
PopupWindow显示的方法有三个,showAsDropDown(anchor),showAsDropDown(anchor, xoff, yoff)和showAtLocation(parent, gravity, x, y)。前两个showAsDropDown方法是让PopupWindow相对于某个控件显示,而showAtLocation是相对于整个窗口的。第一个参数是View类型的转载 2015-08-15 23:05:54 · 1037 阅读 · 0 评论 -
Android PopupWindow
Android的对话框有两种:PopupWindow和AlertDialog。它们的不同点在于:AlertDialog的位置固定,而PopupWindow的位置可以随意AlertDialog是非阻塞线程的,而PopupWindow是阻塞线程的PopupWindow的位置按照有无偏移分,可以分为偏移和无偏移两种;按照参照物的不同,可以分为相对于某个控件(Anchor锚)和相对于父控件转载 2015-08-15 23:08:17 · 316 阅读 · 0 评论 -
多线程下载原理
步骤:1>、首先从web服务器获取网络文件的长度,然后再Android客户端生成一个与网络文件长度相等的本地文件2>、开启N条线程下载文件,计算每条线程负责下载的数据量,公式如下:int block = 文件长度%N==0?文件长度/N:文件长度/N+13>、开启多条线程分别从网络文件的不同位置下载数据,并从本地文件相同的位置写入数据,要计算出每条线程从网络文件的什么位置开始下载数原创 2015-08-18 07:34:10 · 455 阅读 · 0 评论 -
Handler类处理消息机制
andriod提供了Handler 和 Looper 来满足线程间的通信。Handler先进先出原则。Looper类用来管理特定线程内对象之间的消息交换(MessageExchange)。1)Looper: 一个线程可以产生一个Looper对象,由它来管理此线程里的MessageQueue(消息队列)。 2)Handler: 你可以构造Handler对象来与Looper沟通,以便pus转载 2015-08-17 20:22:10 · 384 阅读 · 0 评论 -
Android 异步消息处理机制 让你深入理解 Looper、Handler、Message三者关系
转载请标明出处:http://blog.youkuaiyun.com/lmj623565791/article/details/38377229 ,本文出自【张鸿洋的博客】很多人面试肯定都被问到过,请问Android中的Looper , Handler , Message有什么关系?本篇博客目的首先为大家从源码角度介绍3者关系,然后给出一个容易记忆的结论。1、 概述Handler 、 Lo转载 2015-08-17 20:38:09 · 295 阅读 · 0 评论 -
多线程断点下载器
通过看传智播客的Android学习视频,写了一个多线程断电下载器,现在写在博客上,记录自己的学习过程。多线程下载原理已写到我的博客上。欢迎大家关注。1.MainActivity.javapackage com.example.muthreaddownloader;import java.io.File;import com.example.n原创 2015-08-18 15:32:33 · 377 阅读 · 0 评论 -
采用SharedPreferences保存用户偏好设置参数
功能:采用·SharedPreferences保存参数于读取参数。当你第一次保存参数后,退出应用后再次打开应用是便会看到你所保存的参数1.MainActivity .javapackage com.example.setting;import java.util.Map;import com.example.service.PreferencesSe原创 2015-08-19 14:52:41 · 409 阅读 · 1 评论 -
Map<String,String> map = new Hash<String,String>
Map是以键值形式存储数据,有点类似于数组。Map中第一个String是它的键,存储的类型为String第二个stString的值,存储的类型也是String 总的来说,map就是一个键与值对应的数组,就是说可以根据它的键找到它的值举例:HashMap可以理解成是一对对数据的集合, 你方便理解Map map=new HashMap(),map.put(key,value);原创 2015-08-19 15:26:23 · 3592 阅读 · 2 评论 -
Android画板
Android画板:本案例是一个简单的Android小应用,仅供大家学习MyView.javapackage com.example.drawboard;import android.R.color;import android.content.Context;import android.graphics.Canvas;import android.graphics.Col原创 2015-10-23 16:02:17 · 855 阅读 · 0 评论