- 浏览: 214960 次
最新评论
文章列表
从相册获取图片并读取图片名称
- 博客分类:
- Android技术
转载自:http://www.eoeandroid.com/thread-6687-1-1.html
Uri uri = data.getData(); Cursor cursor = getContentResolver().query(uri, null, null, null, null); cursor.moveToFirst(); String imgNo = cursor.getString(0); //图片编号 String imgPath = cursor.getString(1); //图片文件路径 ...
Android完全关闭应用程序
- 博客分类:
- Android技术
转载自:http://yueguc.iteye.com/blog/939692
在工作过程序中遇到一个需要完全关闭应用程序的问题,在网络上找了一大堆的文章,每篇都是用System.exit(0) 或者 android.os.Process.killProcess(android.os.Process.myPid()) 这两种方法,但是我试过了, System.exit(0) 这个根本不行,而 android.os.Process.killProcess(android.os.Process.myPid()) 这个只能关闭当前的 Activity ,也就是对于一个只有单个 Activi ...
原理:
类似与sax解析,是基于事件的xml解析方式。
Pull解析器刚开始定位在文档的开始,pull解析器可以获取到当前事件类型,根据事件类型做相应的操作,通过解析器的next方法将游标定位到下一个节点位置。
我们可以通过不同节点事件类型去获取到xml文件中的数据封装到bean对象,将bean对象封装到集合,完成相应的业务需求。
代码实例:
原理:
在手机中生成xml文件可以使用流将xml文件内容输出到文件中,但是效率很低而且很容易出错,google提供的API中提供了xml序列化器方便我们生成xml文件。
代码实现:
1.获取xml序列化器
2.用序列化器设置初始化参数,指定输出目标(输出流对象),输出编码,开始文档属性(文档声明中的编码以及是否是独立文档)和文档结束。
SharedPreference
- 博客分类:
- Android技术
SharedPreferences简介
SharedPreferences(共享参数)简介:
我们在做用户名密码保存和读取时,用#号作为分隔符。但是用户名中如果包含#号在读取用户名和密码时会发生问题。Google的工程师为了解决这类问题为我们提供了SharedPreferences类。类似与一个map对象,存储参数名和参数值。
、
操作原理:
Android系统中的数据库,以文件的形式存在。
同其他数据库一样,SQLiteDatabase数据库简单来说也是对增删该查操作。
---------------------------------------------------------------
如何清除应用程序数据库 ?
将应用程序卸载
sqlite数据库需要有一个_id主键,如果不是在查询的时候可以使用select id as _id.... ,这样获取的cursor结果集中
Shape自定义图形详解
- 博客分类:
- Android技术
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<!-- 填充 -->
<solid
android:color="#B2B2B2"
/>
<!-- 大小 -->
<size ...
Gallery的使用
- 博客分类:
- Android技术
1.通过findviewById找到布局文件中的Gallery
2.设置Gallery的数据输配器
1.通过findviewById找到布局文件中的Gallery
2.设置Gallery的数据输配器
package com.hezhud.gallery;
import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.graphics.BitmapFactory;
import android.os.Bundle;
i ...
当应用不再使用时,通常需要关闭应用,可以使用以下三种方法关闭android应用:
第一种方法:首先获取当前进程的id,然后杀死该进程。
android.os.Process.killProcess(android.os.Process.myPid())
只能杀死自己
第二种方法:终止当前正在运行的Java虚拟机,导致程序终止
System.exit(0);
第三种方法:强制关闭与该包有关联的一切执行
TabHost选项卡
TabHost标签,TabWidget标签,FragmentLayout标签,这三个标签的id都是固定的系统定义的。
TabHost由标签(tabs)和标签体(tabcontent)组成。
是一个容器,可以包含并且运行多个嵌入的activity。
已过时,推荐使用Fragment替代。
fragment自定义片段
手机屏幕上显示两个Activity,在平板电脑上时两个Activity显示的内容可以在一个界面上显示出来。不同屏幕和不同分别率显示的效果。
在手机屏幕上创建两个Activity,而在平板电脑上显示一个Activity显示手机屏幕两个Activity的内容。
优点:创建新的界面时不需要在去创建activity,Fragment不需要在清单文件中配置,简化了开发过程,
----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------ 代理的概念与作用 生活中的代理 武汉人从武汉的代理商手中买联想电脑和直接跑到北京传智播客旁边来找联想总部买电脑,你觉得最终的主体业务 ...
----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------
反射
反射就是将java类中的各种成分反射成相应的java类。
java程序中的各种java类属于同一类事物,描述这类事物的java类名就是Class。
得到一个类字节码的两种情况
1.这个类的字节码已经加载到内存中,直接返回已存在的那份字节码
2.如果内存中还没有这个类的字节码,用类加载器将字节码加载进内存并缓存起来,返回加载进来的字节码。
获取类字节码的三种方式
1.类名.class,比如Person类的字节码Person.cl ...
----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------
什么是类加载器
类加载器就是加载类的工具,我们在程序中用到一个类的时候,虚拟机通过类加载器将class文件加载加载到内存中在进行一系列的处理后变成字节码为我们使用。
Java中默认的类加载器
Java虚拟机中可以安装多个类加载器,系统默认三个主要类加载器,每个类负责加载特定位置的类:BootStrap,ExtClassLoader,AppClassLoader
类加载器也是
----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------
线程显示锁机制
jdk1.5后Lock可以替代Synchronized
Conditioin对象封装了wait、notify、notifyAll同步方法
显示锁机制
1.生成锁 Lock lock = new ReentrantLock();一个锁可以对应多个Condition对象对不同线程状态进行控制。
2.持有锁 lock.lock();在方法中使用lock方法对方法加锁
3.同步Condition con = lock.newCondition(); ...