Android
xml布局文件
加载xml:setContentView,inflater
布局
帧布局FrameLayout
线性布局LinnerLayout
相对布局RelativeLayout
网格布局GridLayout
参数:Layout.params
Button
TextView
Image:ScaleType:FitXY拉伸、CenterCrop保持纵横比
EditText
RadioButton
RadioGroup
TableView
GridView
SeekBar
ProcessBar
ProcessDialog
AlertDialog
SurfaceView
SurfaceHolder
Canvas
Spinner
ListView
ExpandableListView
RecycleView:Item、ViewHolder、Adapter、OnItemChange
BaseAdapter: getCount,getItem,getItemId,getView,setData
Fragment
切换:getFrameManager().beginTransaction(), replace,commit,传参Bundle
优化
include嵌套、merge 减少嵌套、ViewStub延迟加载
资源
colors.xml #FFFFFF
styles.xml
strings.xml
dimens.xml
动画
res/anim
逐帧动画:animation-list
属性动画:objectAnimation
getWindow()
getWindowManager().getDefaultDisplay().getMetrics()
getResources.getDisplayMetrics()
getResources().getAssets()
Activity
生命周期
OnCreate
OnStart
OnResume
OnPause
OnStop
OnDestroy
OnRestart
获取:findViewById、ButterKnife
Activity到Activity
切换:startActivity
传参:Intent
返回值:OnActivityResult, OnActivityResult
自定义
Paint:setColor,setStyle
Canvas: drawColor,drawBitmap,drawPath
service
getSystemService()
registerListener
锁屏 PowerManager,POWER_SERVICE
传感器 SENSOR_SERVICE
时钟 ALARM_SENVICE
BroadCastReceiver
继承BroadCastReceiver
实现OnReceive(getAction(),判断action类型)
IntentFilter
注册registerReceiver
事件
OnBack
OnKeyDown
setOnTouchListener
摄像头
checkCameraHardware()
getpackageManager.hasSystemFeature()
CameraInfo
getNumberOfCameras
getCameraInfo
getParameters
SurfaceView, getholder, SurfaceHolder, setPreViewdisplay, startPreview
权限
在mainftest.xml申请权限
动态申请权限
判断版本
MVC三层架构
Bean:实体类
model:数据库操作类
view:显示
control:业务处理
数据库
SQLiteDatabaseOpenOrCreateDatabase
execSQL(“”)
Cursor cursor = db.rawQuery(“”);
if(cursor.getCount())
{
List list = new ArrayList();
while(cursor.moveToNext())
{
SQLBean bean = new SQLBean();
bean.setContex(cursor.getString(cursor.getColumnIndex(“”));
list.add(bean);
}
}
Binder机制
跨进程通信:用户空间不共享,内核空间数据共享。
使用cs架构,在Binder驱动空间创建缓冲,数据和内核缓冲区映射,接收进程的用户空间和数据缓冲区映射。
JNI
native层
Java_包名_类名_方法()
重载:Java_包名_类名_方法__XX()
数据类型转换:String和数组
签名
C++调用java类:env->FindClass,env->GetMethodID,env->NewObject,CallVoidMethod
静态成员和静态方法
异常