Android学习要点Word下载.docx

上传人:b****6 文档编号:18143291 上传时间:2022-12-13 格式:DOCX 页数:10 大小:27.64KB
下载 相关 举报
Android学习要点Word下载.docx_第1页
第1页 / 共10页
Android学习要点Word下载.docx_第2页
第2页 / 共10页
Android学习要点Word下载.docx_第3页
第3页 / 共10页
Android学习要点Word下载.docx_第4页
第4页 / 共10页
Android学习要点Word下载.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

Android学习要点Word下载.docx

《Android学习要点Word下载.docx》由会员分享,可在线阅读,更多相关《Android学习要点Word下载.docx(10页珍藏版)》请在冰豆网上搜索。

Android学习要点Word下载.docx

focusableInTouchMode=“true”

Day05:

一、写出相对布局的16个属性二、写出Spinner的常用属性(至少4个)下拉模式:

android:

spinnerMode设置标题:

prompt=“@string/title”设置数据源:

android:

entries=“@array/cityes”设置下拉背景:

popupBackground=“#f00”三、描述Spinner与ArrrayAdapter之间的用法(需要写出ArrayAdapter的构造方法)1.Spinner是AdapterView的子类,因此需要ArrayAdapter显示数据2.Spinner.setAdapter(ArrayAdapter)设置Spinner的适配器对象3.ArrayAdatper(Contextcontext,intresid,List<

T>

datas)ArrayAdapter(Contextcontext,intresid,T[]datas)四、写出AutoCompleteTextView的用法及文本改变事件监听器接口1.AutoCompleteTextView辅助用户快速输入内容2.AutoCompleteTextView辅助的信息是集合类型,因此需要一个ArrayAdapter3.AutoCompleteTextView.setAdapter(ArrayAdapter)4.AutoCompleteTextView.addTextChangedLinstener(TextWatcher)

 

Day06:

一、写出ImageView的ScaleType的属性值(至少需要5个)centerCropcenterInsidefitCenterfitStartfitEndfitXYcenter二、写出Activity之间的传值方式1.intent2.静态成员3.全局对象或方法4.startActivityForResult三、写出Spinner与ArrayAdapter的用法Spinner.setAdapter(ArrayAdapter)ArrayAdapter<

(Contextcontext,intresid,T[])或ArrayAdapter<

(Contextcontext,intresid,List<

)四、写出Activity的生命周期方法与相关说明1.onCreate()初始创建时调用,且只调用一次2.onStart()显示窗口3.onResume()获取焦点,与用户交互4.onPause()失去焦点,暂停与用户交互5.onStop()关闭窗口6.onRestart()重新显示窗口:

onStart()—>

onResume()7.onDestory()销毁窗口对象五、写出ActivityA启动ActivityB的生命周期方法的调用顺序A:

onPause->

B:

onCreate()->

onStart()->

B:

onResume()->

A:

onStop()六、写出当前Activity下按Home键的生命周期方法的调用顺序onPause()->

onStop()

Day07:

一、写四种Activity运行模式和设置方法四种:

standardsingleTopsingleTasksingleInstance设置方法:

在清单配置文件(AndroidManifest.xml)的Activity标签中使用android:

launchMode属性设置二、RunningTaskInfo类的常用属性id,baseActivity,topActivity,numActivities三、写出Intent的七大属性ComponentNameActionCategoryDataTypeExtraFlag四、写出打电话的隐式意图Intentintent=newIntent(Intent.ACTION_CALL,Uri.parse(“tel:

10086”));

startActivity(intent);

一、描述一下Android中使用线程的规则1.主线程(UI线程)不能被阻塞2.子线程(WorkThread)不能访问UI控件二、什么时候会发生ANR,ANR全称是什么是在主线程被阻塞5秒以上则会发生ANR,ApplicationnotResponding解决办法是在子线程中执行耗时操作三、写出AsyncTask的用法1.创建类,继承AsyncTask类,并指定三个泛型2.重写doInBackground()方法,在此方法中处理网络或耗时操作3.重写onPostExecute()处理后台线程返回结果4.重写onPreExecute()和onProgressUpdate()实现后台处理进度信息5.在UI线程中实现自定义的AsyncTask的子类,并调用其的execute()方法执行网络请求四、如何取消AsyncTask1.通过自定义的AsyncTask的子类对象,调用其的cancel(true)取消任务2.在AsyncTask子类的doInBackground()方法中,通过isCancelled()判断当前任务是否被取消

Day09:

一、写出AsyncTask的三种泛型的作用1.Params:

请求处理的类型(Url和String)2.Progress:

后台处理的进度(Integer)3.Result:

后台处理的结果类型(Bitmap,List<

)二、如何修改ProgressBar的样式<

ProgressBarstyle=“?

attr?

ProgressBarStyleHorizontal”>

三、写出ListView的常用属性android:

divider设置分隔线的样式android:

dividerHeight:

设置分隔线的高度android:

entries设置列表的数据源四、写出BaseAdapter的四个抽象方法publicintgetCount();

publicObjectgetItem(intposition)publiclonggetItemId(intposition)publicViewgetView(intposition,ViewconvertView,ViewGroupparent);

Day12:

1、写出三种不同的菜单的创建方式和点击菜单项的事件处理1.OptionsMenu在Activity中重写onCreateOptionsMenu()重写onOptionsItemSelected()2.ContextMenu重写onCreateContextMenu()重写onContextItemSelected()3.PopupMenupopupMenu=newPoppuMenu(Context,View);

popupMenu.setOnMenuItemClickListener(OnMenuItemClickListener)//设置菜单项点击事件二、写出AlertDialog简单用法AlertDialog.Builderbuilder=newAlertDialog.Builder(Context);

builder.setTitle(String).setIcon(intres).setMessage(String).setPositiveButton(String,DialogInterface.OnClickListener).create().show();

三、写出一个通知的普通用法(构造通知和发送通知)1.NotificationCompat.Builderbuilder=newNotificationCompat.Builder(Context);

builder.setSmallIcon(intresId).setContentTitle(String).setContentText(String).setContentIntent(PendingIntent);

2.NotificationManagernotifyManager=(NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);

notifyManager.notify(1,builder.build())

Day13:

1、写出Fragment11个生命周期方法onAttach()onCreate()onCreateView()onActivityCreated()onStart()onResume()onPause()onStop()onDestroyView()onDestroy()onDetach()二、写出Fragment传值方式Bundle方式:

FragmentTransaction.setArguments(Bundle)Activity方式:

在Activity中声明public方法,在Fragment中通过getActivity()获取Fragment所在的Activity对象,并执行其中public方法三、如何动态增加Fragment到指定的布局中(id:

contentId)FragmentManagermanager=getFragmentManager();

FragmentTransactiontrans=manager.beginTransaction();

trans.replace(contentId,newCustomFragment());

mit()

Day14:

1、写出四种数据存储方式SharedPreferences共享参数内部存储扩展存储网络存储

二、如何判断SDCard是否可用,如何获取SDCard的根目录1.StringsdcardState=Environment.getExternalStorageState();

if(sdCardSate.equals(Environment.MEDIA_MOUNTED){//可用}2.Stringpath=Environment.getExteralStorageDirectory().getAbsolutePath()三、写出内部存储的读写方法1.读FileInputStreamfis=openFileInput(String)2.写FileOutputStreamfos=openFileOutput(String,intmode),Context.MODE_PRIVATE四、写出共享参数的简单使用的代码(读与写)1.读SharedPreferencespres=getSharedPreferences();

Stringkey=pres.getString(“key”);

2.写SharedPreferencespres=getSharedPreferences();

SharedPreferecces.Editoreditor=pres.edit();

editor.putString(“key”,”Value”);

mit();

五、写出上传文件核心代码(Android端)MultipartEntitymultipartEntity=newMultipartEntity();

FileBodyfile=newFileBody(newFile(filePath));

FormBodyPartformPart=newFormBodyPart(“form”,file);

multipartEntity.addPart(formPart);

HttpClientclient=newHttpClient();

HttpPostpost=newHttpPost(url);

post.setEntity(multipartEntity);

Day15:

一、写出SimpleAdapter的构造方法SimpleAdapter(Context,List<

HashMap<

String,?

>

intresId,String[],int[])二、写出SimpleCursorAdapter的构造方法SimpleCursorAdapter(Context,intresId,Cursor,String[],int[],intflags)flag—>

CursorAdapter.FLAG_REGISTER_CONTENT_OBSERVERCursorAdatper.FLAG_AUTO_REQUERY三、写出数据库操作的相关类(到少3个)SQLiteDatabaseSQLiteOpenHelperCursorContentValues四、写出内部存储的数据库的位置/data/data/{packName}/databases/*.db

day16:

1、写出AsyncTask使用步骤1.创建类,继承AsyncTask,并指定三个泛型2.重写四个方法onPreExecute()ResultdoInBackground(Params…params)[必须实现]onPostExecute(Resultresult)[必须重写]onProgressUpdate(Progress…progress)3.在UI线程中实例化异步任务类,并执行execute(Params…)二、写出BaseAdapter的四个抽象方法intgetCount()ObjectgetItem(intposition)longgetItemId(intposition)ViewgetView(intposition,ViewconvertView,ViewGroupparent)三、写出SQLiteOpenHelper的用法(两种打开数据库的方式)1.创建类,继承SQLiteOpenHelper2.重写二个方法,并增加带Context参数的构造方法1).onCreate()2).onUpgrade(SQLiteDatabasedb,intoldVersion,intnewVersion)

3.实例化SQLiteOpenHelper子类的对象->

dbHelper1).dbHelper.getReadableDatabase()只读方式2).dbHelper.getWritableDatabase()读写方式

Day17:

1、写出Fragment的11个生命周期方法1)onAttach(Activity)onCreate(Bundle)onCreateView(LayoutInflater,ViewGroupcontainer,Bundle)onActvityCreated(Bundle)2)onStart()onResume()onPause()onStop()3)onDestoryView()onDestory()onDettach()二、解析以下的Json内容:

(至少2种方式)[{age:

10,name:

”s1”},{age:

15,name:

”s2”,sex:

”男”},{name:

”s3”,sex:

”女”}]1.StringjsonStr=“[{age:

”女”}]”JSONArrayarray=newJSONArrray(jsonStr);

for(inti=0;

i<

array.length;

i++){JSONObjectobj=array.getJSONObject(i);

intage=obj.optInt(“age”);

Stringname=obj.optString(“name”);

Stringsex=obj.optString(“sex”);

}2.FastJSON方式1)创建JavaBean类->

Student2.List<

Student>

list=JSON.parseArray(jsonStr,Student.class);

3.GOSN方式1)创建Student类2)创建TypeToken<

LIst<

typeToken=newTypeToken<

List<

(){};

3)创建Gson对象:

Gsongson=newGson();

List<

lists=gson.fromJSON(jsonStr,typeToken.getType());

三、写出ContentProvider的使用步骤(涉及到提供方和使用方及相关的方法)1.提供方(ContentProvider端)1)创建SQLiteOpenHelper的子类,并实现两个方法,用于对本应用下的数据库操作的onCreate()onupgrade(SQLiteDatabasedb,intoldVersion,intnewVersion)2)创建ContentProvider的子类,并实现6个方法,主要提供给ContentResolver端使用的booleanonCreate()query(Uriuri,String[]projections,Stringwhere,String[]whereArgs,StringsortOrder)insert(Uriuri,StringnullColum,ContentValuesvalues)update(Uriuri,ContentValuesvalues,Stringwhere,String[]whereArgs)delete(Uriuri,Stringwhere,String[]whereArgs)StringgetType(Uriuri)3)在ContentProvider子类中增加Authority和相应请求的Code4)根据请求的Code增加Uri到UriMatcher中UriMatchermatcher=newUriMatcher(UriMatcher.NO_MATCH)matcher.addUri(StringAuthority,Stringpath,intcode)5)在相应的方法中通过UriMatcher对象,匹配当前请求的Uri是哪种Code,根据不同的code来处理不同表的事务6)在AndroidManifest.xml清单配置文件增加访问当前ContentProvider的权限,并注册ContentProvider<

permissionandroid:

name=“{Authority}.READ_WRITE”/>

..<

providerandroid:

name=“CotentProvider子类的完整类路径”android:

authorites=“{Authority}”android:

permission=“{Authority}.READ_WRITE”android:

exported=“true”/>

2.使用方1).在AndroidManifest.xml清单配置文件使用提供方声明的权限<

uses-permissionandroid:

2)通过getContentResolver()获取到ContentResolver对象,并执行相应的数据处理事务注意:

.需要正确使用Uri数据访问接口和访问字段

Day18:

1、写出SimpleCursorAdapter的构造方法SimpleCursorAdapter(Context,intresId,Cursor,String[]from,int[]to,intflag)flag->

CursorAdapter.FLAG_REISTER_CONTENT_OBSERVER二、写出启动Loader的步骤1.当前的Activity或Fragment实现LoaderCallbacs<

D>

接口,并实现其三个方法Loader<

onCreateLoader(intloaderId,Bundleargs)onLoadFinished(Loader<

loader,Cursordata)onLoaderReset(Lo

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 文化宗教

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1