My Android 学习之旅--开始】的更多相关文章

去年大概在七月份的时候误打误撞接触了一阵子Android,之后由于工作时间比较忙,无暇顾及,九月份的时候自己空闲的时间比较多,公司相对来说加班情况没以前严重.开启了个人的Android学习之旅,初衷是想将Android的博客做个索引文章的,不过想想还可以分享一些学习中的历程,算是对自己的Android学习 有个交代吧.由于在公司有工作,学习的时间通常就是周一到周五晚上的时间和周末时间,周一到周五晚上的时间不确定,因此牺牲了大量的周末时间来学习Android,有点像苦行僧,时间段持续了三个多月.如…
2017-02-27 今天开始,正式开启Android学习之旅,背景从事.Net平台开发快五年了,一直在用C#做Web开发. 前天选购了两本书:<Java 编程思想(第四版)>和<第一行代码Android(第二版)>已到手,正式开始学习,园友们有好的学习规划或者书籍请推荐,小弟拜谢!!!…
一般面试时间短则30分钟,多则1个小时,这么点时间要全面考察一个人难度很大,需要一些技巧,这里我不局限于回答题主的问题,而是分享一下我个人关于如何做好Android技术面试的一些经验: 面试前的准备 1. 简历调查 简历到你手上的时候,你要做好充分的调查分析,不仅仅是对公司负责,也是对自己与候选人时间的尊重,明显不match的简历,就不要抱着"要不喊过来试试看"的想法了,候选人也许很不错,但如果跟你的岗位不match, 也不要浪费大家时间,你要想清楚现在需要的人是有潜力可以培养的,还是…
其实,很早就想写写博客了,一直懒到现在. 学习android也不是今天才开始的,大概在2月份过完年之后就开始了,买了我认为还可以的书<Android从入门到精通>,花了不到一个月的时间,把前面的基础部分看完了,但是还是感觉啥都不知道,为啥呢?因为对它太陌生,太不了解了. 自己当初是学了C#+.netFramework,动手做了一个项目,总结出来一句话:原来语言是相通的.所以在当今,工作越来越不好找,就决定找个热门的行业,手机来作为自己以后跳槽的方向,最初的目的是为了自己以后好找一份工作. 算了…
1.Android介绍 1.1 Android的系统架构 下面这张图展示了Android的系统架构: 图中可见,Android大致可以分为四层架构,五块区域: Linux内核层(Linux Kernel) Android系统时基于Linux2.6内核的,这一层为Android设备的各种硬件提供了底层的驱动,如显示驱动.音频驱动.照相机驱动.蓝牙驱动.WiFi驱动.电源管理等. 系统运行层 这一层通过一些C/C++库来为Android系统提供了主要的热性支持,比如SQLite库提供了数据库的支持,…
Toast简单介绍 Toast是一个很方便的消息提示框.会在桌面显示一个短暂的消息提示.有两个特点: 1.消息不会获得焦点. 2.过一段时间会自己主动消失. Toast的生成步骤 1.调用构造器或者静态方法makeText()来生成一个Toast. 2.调用Toast设置该消息的对其方式.页边距等. 3.调用Toast的show()方法将他显示出来. Toast大部分仅仅能显示消息,假设要显示图片和图表等须要用setView()方法进行定制. 带图片的消息提示 demo package peng…
在学完了Android的基础之后,我开始尝试着写一些小项目练练手,同时进一步巩固自己的基础知识,而我选的的第一个项目就是做一个简单的人人对战的五子棋小游戏. 首先,我们要新建一个自定义控件类Panel,这基本上涵盖着整个项目的大部分操作,比如棋盘的设计等等,下面开始Panel的编写,代码如下: public class Chess_Panel extends View{ private int myPanelWidth ; //棋盘宽度 private float myLineHeight; /…
使用简单图片 使用Drawable对象 bitmap和BitmapDrawable对象 package peng.liu.test; import android.app.Activity; import android.content.res.AssetFileDescriptor; import android.content.res.AssetManager; import android.graphics.BitmapFactory; import android.graphics.dr…
android提供了统一的编程模型Intent来启动系统的组件,这样提供了松耦合性.是一种mvc的编程模式 $(function () { $('pre.prettyprint code').each(function () { var lines = $(this).text().split('\n').length; var $numbering = $(' ').addClass('pre-numbering').hide(); $(this).addClass('has-numberin…
android的多点触摸是经常遇到的编程技巧,这一篇可以将详细的介绍这个问题. 简单实例 android的触摸需要实现OnTouchListener接口,继承里面方法. 布局代码: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layou…
ToggleButton 和Switch简介 ToggleButton 和Switch都是继承了Button,所以他们的属性设置和Button差不多. 分别支持的属性 ToggleButton 的属性: Switch的属性: analogColok和DigitalColok简介 digitalColok继承了text,但是它的setText方法不能使用,能够显示精确到秒,作为数字的表,analogColok则是继承了View,进行了几何的重绘,不能显示秒. analogColok和Digital…
RadioButton和checkBox简介 单选按钮(RadioButton)和复选框(CheckBox)都继承了Button,因此属性的设置和Button差不多,只是加了一个android:chencked属性. 用来设置是否被选中. RadioButton和checkBox的区别 前者如果一组只能只能选中一个,一次通常会与RadioGroup一块使用,后者没有限制. 实例 <LinearLayout xmlns:android="http://schemas.android.com/…
9patch的使用方法 9patch图片常被用来做消息发送等的图片,只是缩放照片的部分区域,使得图片的整体形状不会受到影响,比较方便. 下面我们介绍一下: 在android的SDK安装目录下的tools目录下,可以找到draw9patch.bat文件,只需要点击就可以了. 左侧和上部的直线负责缩放区域,右侧和下策的直线,负责内容显示.…
1.首先注册聚合数据账号,下载相应的sdk 2.导入jar包和 so文件 配置Application,初始化sdk <application //自己新建的application类 android:name="com.juhe.weather.WeatherApplication" android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label=&q…
基本概念: service是android四大组件之一,运行在后台执行耗时操作,并不提供用户界面.其他组件如acticity可以通过startService启动该组件,也可以通过bindService启动并把绑定该组件进行通信. 使用场景 后台下载文件,以及播放音乐等 注意 service运行在主线程中,他不会创建属于自己的线程,也不是运行在独立的线程中,所以在使用的时候,需要自己创建线程,而不应该直接使用,这样会造成ANR错误. service的两种形式 started service 其他组…
认识dart语言 google于2011年10月10日发布了"dart"语言的"早起预览版",google希望利用这款语言,帮助开发者克服javaScript的缺点. 2012年,google不但放出了Dart的m4更新,不但加入了大量的新特性,Dart vm,而且编译后的js在运行速度上有了显著的提高. sky语言的优势 1.使得android的响应速度更快,更流畅.作为普通android程序,一般是每秒60帧,如果低于这个就会卡顿,好多软件是达不到每秒60帧的,…
简介 Android SDK支持Android设备内置的照相机.从Android2.3开始支持多个摄像头(主要指前置摄像头和后置摄像头).通过照片相可以拍照和录像. 需要考虑的问题 是否支持照相机 快速拍照还是定制拍照 存储问题 照相机涉及的主要API Intent听过action来启动系统的相机 Camera SurfaceView MediaRecorder(录像) 权限 "android.permission.CAMERA" "android.permission.WR…
传感器概述 传感器是第二代智能手机的重要标志之一.现在许多的手机和平板都内置了传感器(tv除外).android的SDK支持许多的传感器有十几种,但是手机只是支持一部分.例如方向传感器(电子罗盘)和重力传感器(屏幕翻转). 大概分为三类 动作传感器 环境传感器' 位置传感器 动作传感器 这类传感器在三个轴(x,y,z)上测量加速度和旋转角度.包括如下几个传感器. - 加速传感器 - 重力传感器 - 陀螺仪传感器 - 旋转向量传感器 环境传感器 湿度传感器' 光线传感器 温度传感器 位置传感器 方…
获取多触摸点 核心代码: 获取触摸点的个数和位置 public boolean onTouch(View v, MotionEvent event) { switch (event.getAction()) { case MotionEvent.ACTION_DOWN: System.out.println("down"); break; case MotionEvent.ACTION_UP: System.out.println("触摸点的个数:"+event.g…
ProgressBar 简介 ProgressBar是一种很常用的Ui,用于给复杂的操作显示进度,提供更好的用户相应.使用setProgress()incrementProgressBy()来设置进度和显示进度的增加或减少,正数表示增加,负数表示减少. ProgressBar的风格 ProgressBar 代码示例 布局代码 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns…
Gridview简介 GridView和ListView有相同的父类AbsListView.他和ListView唯一的区别是Gridview可以显示多列,如果不设置列数,就默认显示一列,变成了ListView. Gridview属性 图片浏览器代码示例 // IntelliJ API Decompiler stub source generated from a class file // Implementation of methods is not available package ja…
AutoComplicatedTextView简介 AutoComplicatedTextView是从EditText派生出来的,可以使用EditText的所有的属性.当用户输入一定的内容后,会有提示,选中后自动填充.顺便介绍一下MultiAutoComplicatedTextView,和上面的用法基本相似,只是可以输入多个提示项,然后用分隔符隔开,用setTokenize()设置分隔符. 属性介绍 代码 package peng.liu.testview; import android.app…
ImageView简介 imageView继承于View,主要用于显示图片,凡是Drawable对象都可以用它显示. ImageView直接派生了ImageButton和ZoomButton等组件. ImageView的属性设置 android:sacleType的设置是用来设置图片的显示方式. 图片浏览器实例 package peng.liu.testview; import android.app.Activity; import android.graphics.Bitmap; impor…
activity之间的数据传递主要有两种,一种是直接发送数据,另一种接受新启动的activity返回的数据,本质是一样的 使用Bundle传递数据 Intent使用Bundle在activity之间传递数据. 代码示例 dto类person package peng.liu.test; import java.io.Serializable; /** * Created by lplp on 2015/6/22. */ public class Person implements Seriali…
概念简介 代码演示 package peng.liu.test; import android.app.ActionBar; import android.app.Activity; import android.graphics.Color; import android.os.Bundle; import android.util.DisplayMetrics; import android.view.Display; import android.view.KeyEvent; import…
androd事件处理简介 控制飞机移动的简单实例 package peng.liu.test; import android.app.ActionBar; import android.app.Activity; import android.graphics.Color; import android.os.Bundle; import android.util.DisplayMetrics; import android.view.Display; import android.view.K…
ActionBar简介 ActionBar是3.0以后加入的新特性,可用于在顶部显示应用名称和标题.初次之外右边还可以显示活动项. ActionBar应用 ActionBar用法 <?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http…
PopupWindow简介 PopupWindow是一个类似dialog的控件,可以接受任何的view作为下拉列表显示. 用法 代码展示 package peng.liu.test; import android.app.Activity; import android.app.AlertDialog; import android.content.DialogInterface; import android.os.Bundle; import android.view.Gravity; im…
Notification简介 Notification位于手机饿最上面,用于显示手机的各种信息,包括网络状态,电池状态,时间等. 属性方法介绍 代码示例 package peng.liu.test; import android.app.Activity; import android.app.Notification; import android.app.NotificationManager; import android.app.PendingIntent; import android…
SearchView简介 SearchView是搜索框组件,他可以让用户搜索文字,然后显示.' 代码示例 这个示例加了衣蛾ListView用于为SearchView增加自动补全的功能. package peng.liu.test; import android.app.Activity; import android.graphics.Color; import android.graphics.drawable.Drawable; import android.os.Bundle; impor…