Android基础
卫星是我朋友
既然无法改变,那就欣然上路。
展开
-
Android数据存储
文件写文件openFileOutput(String name, int mode)返回FileOutputSteam对象MODE_PRIVATE:同名覆盖MODE_APPEND:同名追加读文件openFileInput(String name)返回FileInputSteam对象SharedPreferences存数据获取SharedPreferences对象Context 类中原创 2016-07-20 02:35:29 · 267 阅读 · 0 评论 -
ContentProvider基本使用
在不同应用之间实现数据共享,并保证安全性访问其他程序中的数据ContentResolver的基本用法查询Cursor cursor = getContentResolver().query( uri, projection, selection, selectionArgs, sortOrder);增删改比较:”添加”没有条件约束,”删除”没有数据Conte原创 2016-07-20 14:57:28 · 430 阅读 · 1 评论 -
Activity的四种启动模式及其应用
任务和返回栈返回栈Activity 启动另一个 Activity 时,该新 Activity 会被推送到栈顶。按返回键时当前Activity出栈。 任务栈Android系统通过栈结构保存整个App的Activity,栈底的元素是整个任务栈的发起者。当一个App启动时,如果当前环境不存在该App的任务栈,则系统会创建一个任务栈,此后,这个App所启动的Activity(也会启动其他App的Activ原创 2016-07-19 20:14:54 · 379 阅读 · 0 评论 -
Intent简介
intent的基本用例有三个: - 启动Activity - 启动服务(请使用显示intent) - 传递广播intent组成intent主要包括:组件名称:setClass()、setComponment()、intent的构造函数(传入了要启动的类名)action(==必选==):要执行的操作的字符串 ACTION_VIEW:启动可以展示信息的某项ACtivity(图库、地图)原创 2016-07-19 01:10:25 · 441 阅读 · 0 评论 -
Android群英传之Android动画机制与使用技巧
1、视图动画视图动画定义了透明度AlphaAnimation、旋转RotateAnimation、缩放ScaleAnimation、位移TranslateAnimation四种基本动画,还提供AnimationSet动画集合,混合使用多种动画。原理: 1. 每次绘制时,View所在的ViewGroup中的drawChild函数获取该View的Animation的Transformation值 2原创 2016-07-23 17:32:05 · 433 阅读 · 0 评论 -
Android群英传之Android绘图机制与处理技巧
1、屏幕尺寸信息1)屏幕参数屏幕大小:对角线长度,单位,寸分辨率:手机屏幕像素点个数,720x1280dpi:每英寸像素2)系统屏幕密度 密度 ldpi mdpi hdpi xhdpi xxhdpi 密度值 120 160 240 320 480 分辨率 240x320 320x480 480x480 720x1280 1原创 2016-07-23 02:19:24 · 356 阅读 · 0 评论 -
Android群英传之ListView的使用技巧
ListView的使用技巧1、ListView的常用优化技巧1)使用ViewHolder模式提高效率 @Override public View getView(int position, View convertView, ViewGroup parent) { ViewHolder holder; if (convertView == null) {原创 2016-07-23 01:55:06 · 297 阅读 · 0 评论 -
Android群英传之Android控件架构与自定义控件
第三章 Android控件架构与自定义控件详解1、Android控件架构ViewGroup可以包含多个View,形成控件树。上层控件负责下层子控件的测量与绘制。findViewById是在控件树中进行深度优先搜索。ViewGroup实现了ViewParent接口,Viewparent定义了一个控件作为父控件的职责,负责子布局与父布局的交互,例如requestLayout。UI界面架构图 每个A原创 2016-07-23 00:17:10 · 379 阅读 · 0 评论 -
Android群英传之Android 滑动分析
1、Android中获取坐标的方法1)View提供的方法getTop:view自身的顶边到父布局顶边的距离 getLeft:view的左边到父布局的左边 getRight:view的右边到父布局的左边 getBottom:view底边到父布局的顶边2)MotionEvent提供的方法getX:点击事件到控件左边 getY:点击事件到控件顶边 getRawX:获取点击事件的绝对X坐标 ge原创 2016-07-24 21:01:13 · 331 阅读 · 0 评论 -
Fragment基本使用
Fragment的简单用法在一个活动当中添加两个fragment,并让这两个fragment平分活动空间。首先是两个fragment布局文件:left_fragment.xml right_fragment.xml 建立RightFragment和LeftFragment,代码类似: activity_main.xml android:name属性显示指明要添加的碎片名<原创 2016-07-19 23:20:09 · 336 阅读 · 0 评论 -
Android进程与线程
进程< activity>, < service>, < receiver>, 和 < provider>都支持android:process属性指定他们在哪个进程运行。< application> 也支持设置该属性,作为其它组件的默认值。进程生命周期进程的重要性一共有5级:前台进程托管用户正在交互的 Activity(已调用 Activity 的 onResume() 方法)托管某个 Ser原创 2016-07-29 21:48:41 · 298 阅读 · 0 评论 -
Android适配
Android适配分为三种:硬件属性、系统版本、屏幕尺寸1、硬件属性PackageManager pm = getPackageManager();if (!pm.hasSystemFeature(PackageManager.FEATURE_SENSOR_COMPASS)) { // This device does not have a compass, turn off the c原创 2016-07-19 23:26:17 · 288 阅读 · 0 评论 -
Android Debug Bridge(adb)
adb常用命令关闭开启adb服务adb kill-server 关闭adb start-server开始选择特定的设备进行连接-d (连接唯一的通过USB连接的设备,不能同时有两个usb相连)-e(连接正在运行的模拟器,不能同时有两个模拟器在运行) -s(通过设备序列号相连,没有限制)connect host[:port]通过网络进行连接disconnet host[:port]断开原创 2015-12-08 17:49:18 · 448 阅读 · 0 评论 -
BroadcastReceiver的基本使用
简介标准广播 无法截断,所有广播接收器都可收到 有序广播具有优先级,广播接收器有接收的先后顺序可被截断 广播的接收动态注册监听网络变化实例化一个IntentFilter,添加动作android.net.conn.CONNECTIVITY_CHANGEintentFilter = new IntentFilter();intentFilter.addAction("android.ne原创 2016-07-20 01:29:50 · 982 阅读 · 0 评论 -
Notification的使用
使用步骤获取 NotificationManager NotificationManager manager = (NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);创建Notification对象//API已过时,先占个坑原创 2016-07-20 15:46:09 · 285 阅读 · 0 评论 -
传感器的使用
核心类:SensorManager、Sensor、SensorEventListener 1、获取传感器管理器 SensorManager senserManager = (SensorManager)getSystemService(Context.SENSOR_SERVICE);2、获取传感器类型 Sensor sensor = senserManager.getDefaultSen原创 2016-07-22 12:35:44 · 394 阅读 · 0 评论 -
Android序列化
Android序列化包括两种:Java的Serializable、Android自己的Parcelable。推荐使用Android系统自带的Parcelable。Serializable方式 只需使对象实现Serialzable接口即可假设Person类已经实现 Serializable接口传输Person对象 intent.putExtra("person_data", person)原创 2016-07-22 14:19:50 · 259 阅读 · 0 评论 -
Android开发技巧汇总
1、全局获取Context自定义Applicationpublic class MyApplication extends Application { private static Context context; @Override public void onCreate() { context = getApplicationContext();原创 2016-07-22 12:53:26 · 309 阅读 · 0 评论 -
谈谈对布局文件、自定义控件、Fragment、Activity的认识
布局文件:布局文件把Android的界面编程给分离了出来,是一个特别好解耦。其实也可以不用布局文件,完全可以用Java代码写一套布局。布局文件中的一些标签其实都是系统内置的视图类(LinearLayout、TextView、EditText)或自己定义的视图类(继承后重造、系统类的组合、完全自己绘制以及事件控制)形如“com.example.uidiy.TitleLayout”。一般视图都只是负责界原创 2016-07-19 22:33:12 · 516 阅读 · 0 评论 -
Android SurfaceView简介
1、简单介绍SurfaceView三个特点:具有独立的绘图表面需要在宿主窗口上挖一个洞来显示自己(其实是让上方变透明,并且surfaceview的绘制表面在Z轴上是低于主绘制界面的)它的UI绘制可以在独立的线程中进行(一般的绘制都必须在主线程更新,自己开个线程专门用来给自己绘图,岂不是很爽~),这样就可以进行复杂的UI绘制,并且不会影响应用程序的主线程响应用户输入推荐阅读:l老罗:Andro原创 2015-12-03 21:36:18 · 466 阅读 · 0 评论 -
Android短信的应用
短信 核心类:SmsMessage、Smsmanager 特点:短信到达时,系统会进行广播,intent里携带短信内容。接收短信 主要就是创建广播接收器接收短信广播class MessageReceiver extends BroadcastReceiver { @Override public void onReceive(Cont原创 2016-07-22 13:26:43 · 276 阅读 · 0 评论 -
Service的使用(三)绑定服务
创建Bound Service 关键类: Binder:活动与服务通信的接口,在Service中定义 ServiceConnection:服务生命周期的回调接口,在服务创建和销毁时回调他的方法。定义服务public class MyService extends Service { private DownloadBinder mBinder = new Downlo原创 2016-07-22 09:56:47 · 942 阅读 · 0 评论 -
Service的使用(二)启动服务与IntentService
创建Started Srevicepublic class StartedService extends Service { private static final String TAG = "StartedService"; public StartedService() { } @Override public void onCreate() {原创 2016-07-20 20:14:00 · 664 阅读 · 0 评论 -
Activity的常用技巧
1、打印当前活动名每次进入Activity就会打印其名字Log.d("Tag",getClass().getSimpleName());2、一键关闭应用(关闭所有的Activity)使用一个集合如ArrayList每次打开新的Activity就存起来ActivityCollector类有一个静态属性:ArrayList对象有三个静态方法:addActivity(Activity a)rem原创 2016-07-19 20:37:37 · 314 阅读 · 0 评论 -
Service的使用(一)
基础知识 服务(Service)在 Android 中实现程序的后台运行,它非常适合用于去执行那些不需要和用户交互而且还要求长期运行的任务。服务的运行不依赖于任何用户界面,即使当程序被切换到后台,或者打开了另外一个应用程序,服务仍然能够保持正常运行。不过,服务并不是运行在一个独立的进程中的,而是依赖于创建服务时所在的应用程序进程。当某个应用程序进程被杀掉时,所有依赖于该进程的服务也会停止运行原创 2016-07-20 19:24:02 · 738 阅读 · 0 评论 -
Json和Xml数据解析
Xml数据解析目标数据<apps> <app> <id>1</id> <name>Google Maps</name> <version>1.0</version> </app> <app> <id>2</id> <name>Chrome</name> <version>2.1</原创 2016-07-22 10:54:29 · 325 阅读 · 0 评论 -
Git操作
首先要知道关于git的四个存储区:原生代码存储区、git暂存区、git仓库区、git远程仓库区 以及代码的三种状态:已修改未暂存、已暂存未提交、已提交未同步、已同步git add . 添加本地代码到暂存区git commit -m “Commit Message” 添加暂存区代码到仓库git commit -am “Commit Message” 合并了add和commit操作,原创 2016-07-22 14:40:33 · 313 阅读 · 0 评论