互聯(lián)網(wǎng)移動設(shè)備已經(jīng)普及,Android,一個開放性平臺,對于各科技公司吸引力在持續(xù)上升,這不只是體現(xiàn)在翻倍上升的Android手機銷量上,Android市場在被迅猛的拓展開。
創(chuàng)新互聯(lián)是一家專注于網(wǎng)站制作、網(wǎng)站設(shè)計與策劃設(shè)計,天寧網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)10余年,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:天寧等地區(qū)。天寧做網(wǎng)站價格咨詢:13518219792
學(xué)習(xí)Android開發(fā)漸漸成為一種潮流。
那么,成都電腦培訓(xùn)介紹學(xué)習(xí)Android開發(fā)要具備哪些基礎(chǔ)呢?首先要熟悉學(xué)習(xí)Android開發(fā)要具備哪些基礎(chǔ)知識。
Java作為學(xué)習(xí)Android開發(fā)的基礎(chǔ)編程語言,掌握J(rèn)ava開發(fā)基礎(chǔ)知識是非常重要的。
另外,還要重點掌握針對Android平臺而特有的Activity、Service、Broadcast、ContentProvider、Handler等知識。
在學(xué)習(xí)Android開發(fā)時還應(yīng)該了解Android的開發(fā)工具。
學(xué)習(xí)關(guān)于AndroidSDK的相關(guān)知識。
AndroidSDK內(nèi)含一整套工具,能夠利于構(gòu)建應(yīng)用程序、設(shè)計圖形及布局。
另外一些工具能夠幫助進行性能的調(diào)優(yōu)和剖析。
可見,掌握開發(fā)工具是非常必要的。
學(xué)習(xí)過程中,要時刻調(diào)整自己的學(xué)習(xí)狀態(tài)。
不要認(rèn)為Android開發(fā)大多應(yīng)用在Android手機上,做的都是小項目。
其實,一個成功的項目開發(fā)必須有完整的流程,要有詳細的規(guī)范、進度,專業(yè)的工程師和設(shè)計師,還要有測試人員以及后期維護等。
僅僅停留在基礎(chǔ)技能范疇,肯定是不能滿足的。
要想具備開發(fā)項目的能力,就要多學(xué)習(xí),積累經(jīng)驗。
對于完全沒有編程語言基礎(chǔ)的人來說,想要學(xué)習(xí)安卓開發(fā),濟南北大青鳥嘉薈學(xué)校老師建議先從C語言開始,主要學(xué)習(xí)它的語法,寫一些經(jīng)典的小算法,鍛煉邏輯思維能力,不需要了解的太深,也無需關(guān)心類庫函數(shù)。
對于沒有JAVA基礎(chǔ)的人來說,想要學(xué)習(xí)安卓開發(fā),就要補一下相應(yīng)的JAVA基礎(chǔ)。
并不是說沒有基礎(chǔ)不能學(xué),但是有了基礎(chǔ)之后學(xué)起來會更簡單。
很多朋友從來沒有搞過編程,聽說Android能賺錢,就瘋了一樣沖過來要學(xué)習(xí),這明顯是不靠譜的。
北大青鳥認(rèn)為最少也要掌握J(rèn)AVA語言的如下知識點才能夠開始學(xué)Android:(1)JAVA基本數(shù)據(jù)類型及其特點(2)JAVA分支語句和循環(huán)語句的使用(3)類和對象的創(chuàng)建和使用方法(4)函數(shù)的使用(5)抽象類和接口(6)繼承和實現(xiàn)(7)對象的多態(tài)性(8)包和訪問權(quán)限(9)異常的處理(10)類集框架(11)eclipse的基本用法對于安卓初學(xué)者來說,入門是一個比較困難的時候,但是安卓并不是一個很難學(xué)的技術(shù),只要用心學(xué),就能夠?qū)W會。
一、activity
1.一個activity就是一個類,繼承activity;
2.需要復(fù)寫onCreate()方法;
3.每一個activity都需要在AndroidMainfest.xml清單上進行配置;
4.為activity添加必要的控件。
二、布局
線性布局:LinearLayout
1.填滿父空間:fill_parent、match_parent
2.文本多大空間就有多大:warp_content
3.文字對齊方式:gravity
4.占屏幕的比例:layout_weight="1" ?水平方向,則width=0,垂直方向,則height=0
5.一行顯示,空間不夠會省略:singleLine="ture"? false會換行
6.背景:background="#ffffff"
7.水平布局:orientation="horizontal"
垂直布局:orientation="vertivcal"
表格布局:TableLayout
1.內(nèi)邊距:padding
2.外邊距:marginLeft\Start、Right\End、Top、Bottom
三、RelativeLayout相對布局
layout_above 將該控件的底部置于給定ID控件之上
layout_below 將該控件的頂部置于給定ID控件之下
layout_toLeftOf 將該控件的右邊緣和給定ID控件的左邊緣對齊
layout_toRightOf 將該控件的左邊緣和給定ID控件的右邊緣對齊
layout_alignBaseline 該控件的baseline和給定ID的控件的Baseline對齊
layout_alignBottom 該控件的底部邊緣和給定ID的控件的底部邊緣對齊
layout_alignLeft 該控件的左邊緣和給定ID的控件的左邊緣對齊
layout_alignRight 該控件的右邊緣和給定ID的控件的右邊緣對齊
layout_alignTop 該控件的頂部邊緣和給定ID的控件的頂部邊緣對齊
layout_alignparentBottom 如果該值為true,則該控件的底部和父控件的底部對齊layout_alignParentLeft 如果該值為true,則該控件的左邊和父控件的左邊對齊
layout_alignParentRight 如果該值為true,則該控件的右邊和父控件的右邊對齊
layout_alignParentTop 如果該值為true,則該控件的上邊和父控件的上邊對齊
layout_centerHorizontal 如果該值為true,則該控件將被置于水平方向的中央
layout_centerInParent 如果該值為true,則該控件將被置于父控件水平和垂直方向的中央
layout_centerVertival 如果該值為true,則該控件將被置于垂直方向的中央
四、一個Intent對象包含一組信息
1.Component name
2.Action
3.Data
4.Category
5.Extras
6.Flags
Intent intent = new Intent(this, SecondActivity.class);
startActivity(intent);? //startActivity方法
intent.putExtra("Key", "Value");? //鍵值對
intent = getIntent();
String value = intent.getStringExtra("Key");? ? //通過鍵提取數(shù)據(jù)
五、初級控件:EditText、TextView、Button
1.獲取EditText的值
String value = EditText.getText().toString();
2.將值放到Intent對象中
Intent intent = new Intent();
intent.putExtra("one",value )
intent.setCalss(Activity.this, OtherActivity.class);
3.使用這個Intent對象來啟動Otheractivity
Activity.this.startActivity(intent);
4.將監(jiān)聽器的對象綁定到按鈕對象上
button.setOnclickListener(new Listener());
5.得到Intent對象當(dāng)中的值
Intent intent = getIntent();
String value1 = intent.getStringExtra("one");
int value2 = Integer.parseInt(value);
六、其他初級控件使用
①ImageView
②RadioGroup和RadioButton
setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener())
③Checkbox
setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener())
④Menu
1.當(dāng)客戶點擊MENU按鈕的時候,調(diào)用onCreateOptionMenu()方法
public boolean onCreateOptionMenu(Menu menu){
menu.add(0,1,1,R.string.id);
}
2.當(dāng)客戶點擊MENU內(nèi)部的具體某一個選項時,調(diào)用onOptionItemSelected()方法
public boolean onOptionItemSelected(MenuItem item){
if(item.getItemId() == 1){
finish();
}
return super.onOptionItemSelected(item);
}
七、Activity的生命周期
1.第一次創(chuàng)建時調(diào)用
protected void onCreat(Bundle saveInstanceState);
2.顯示出來時調(diào)用
protected void onStrat();
3.獲得用戶焦點時調(diào)用(可操作)
protected void onResume();
4.點擊彈出第二個Activity時調(diào)用
protected void onPause();
5.當(dāng)?shù)谝粋€Activity不可見時調(diào)用
protected void onStop();
6.當(dāng)返回第一個Activity時調(diào)用,代替OnCreate,因為沒被銷毀
protected void onRestart();
7.當(dāng)返回第一個Activity時調(diào)用(先執(zhí)行onStop,在執(zhí)行,因為第二個Activity被銷毀,不能返回獲取,只能通過onCreat,onStart,onResume再創(chuàng)建)
protected void onDestory();
八、Task
1.Task是存放Activity的Stack棧。當(dāng)點擊啟動第二個Activiry時,第一個Activtiy會被壓入Stack棧當(dāng)中,第二個Activity會位于棧的頂部;當(dāng)返回第一個Activtiy時,第二個Activity會被彈出Stack,第一個Activity會位于棧的頂部,以此類推。
注釋:當(dāng)調(diào)用finish()時,當(dāng)前的Activity會被Destory掉,棧中的Activity會消失。
2.當(dāng)Activity都從Stack退出后,則就不存在Task。
九、高級控件
①進度條ProgressBar
水平進度條style="?android:attr/progressBarStyleHorizontal"
圓圈進度條style="?android:attr/progressBarStyle"
用戶可視的visibility="gone"
②列表ListView
十、其他控件
A.下拉菜單Spinner
1.創(chuàng)建一個ArrayAdapter:
ArrayAdapterCharSequence adapter = ArrayAdapter.createFromResource(
this, //指上下文對象
R.array.plant_array, //引用了在文件中定義的String數(shù)組
android.R.layout.simple_spinner_item);//用來指定Spinner的樣式,可替換自定義
adapter.setDropDownViewResource(
android.R.layout.simple_spinner_dropdown_item);//設(shè)置Spinner當(dāng)中每個條目的樣式
2.得到Spinner對象,并設(shè)置數(shù)據(jù):
spinner=(spinner)findViewById(R.id.spinnerId);
spinner.setAdapter(adapter);
spinner.setPrompt("測試");//標(biāo)題
3.創(chuàng)建監(jiān)聽器
class SpinnerOnSelectListener implements OnItemSelectedListener{
@override
public void onItemSelected(
AdapterView? adapterView,//整個列表對象
View view,//被選中的具體條目對象
int position,//位置
long id){ //id
String selected = adapterView.getItemAtPosition(position).toString();
}
@override
public void onNothingSelected(AdapterView? adapterView){
S.o.p("nothingSelected");
}
}
4.綁定監(jiān)聽器
spinner.setOnItemSelectedListener(new SpinnerOnSelectListener());
注:第二種動態(tài)設(shè)計
1.創(chuàng)建ArrayList對象
ListString list = new ArrayListString();
list.add("test1");
2. 調(diào)用方法
ArrayAdapter adapter = new ArrayAdapter(
this, //指上下文對象
R.layout.item, //引用了指定了下拉菜單的自定義布局文件
R.id.textViewId,//id
list);//數(shù)據(jù)
3.得到Spinner對象,并設(shè)置對象
spinner.setAdapter(adapter);
spinner.setPrompt("測試");//標(biāo)題
3.創(chuàng)建監(jiān)聽器
class SpinnerOnSelectListener implements OnItemSelectedListener{
@override
public void onItemSelected(
AdapterView? adapterView,//整個列表對象
View view,//被選中的具體條目對象
int position,//位置
long id){ //id
String selected = adapterView.getItemAtPosition(position).toString();
}
@override
public void onNothingSelected(AdapterView? adapterView){
S.o.p("nothingSelected");
}
}
4.綁定監(jiān)聽器
spinner.setOnItemSelectedListener(new SpinnerOnSelectListener());
B.DatePicker和DatePickerDialog
1.聲明一個監(jiān)聽器,使用匿名內(nèi)部類
DatePickerDialog.OnDateSetListener onDateSetListener
= new DatePivkerDialog.OnDateSetListener(){
public void onDateSet(
DatePicker view,
int year,
int monthOfYear,
int dayOfMonth){
S.o.p(year+"-"+motnOfYear+"-"+dayOfMonth)
}
}
2.復(fù)寫onCreateDialog(int id)方法:
@override
protected Dialog onCreateDialog(int id){
switch(id){
case DATE_PICKER_ID:
return new DatePickerDialog(this,onDateSetListener,2019,11,25);
}
return null;
}
3.使用時調(diào)用showDialog()方法
showDialog(DATE_PICKER_ID);
C.AutoCompleteTextView
B.Widget
C.Animatin
十一、實現(xiàn)ContentProvider過程
1.定義一個CONTENT_URI常量
2.定義一個類,繼承ContentProvider
3.實現(xiàn)query、insert、update、delete、getType和onCreate方法
4.在AndroidManifest.xml當(dāng)中進行聲明
學(xué)編程入門建議:
1.學(xué)編程要從根本出發(fā),從理論上來說,需要廣泛的閱讀。了解算法的博大精深和計算機的基本理論。
2.從實踐上來說,需要有廣泛的練習(xí),練習(xí)的廣泛在于練習(xí)不同的內(nèi)容。然后就是創(chuàng)新精神和數(shù)學(xué)思維能力,這些都是需要培養(yǎng)的。基礎(chǔ)要打好學(xué)編程要具備一定的基礎(chǔ)。
3.邏輯思維能力的培養(yǎng)、學(xué)程序設(shè)計要有一定的邏輯思維能力。“思維能力”的培養(yǎng)要長時間的實踐鍛煉。要想成為一名優(yōu)秀的程序員,最重要的是掌握編程思想。要做到這一點必須在反復(fù)的實踐、觀察、分析、比較、總結(jié)中逐漸地積累。
文章標(biāo)題:android編程入門,Android開發(fā)入門教程
分享網(wǎng)址:http://chinadenli.net/article34/dsdssse.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設(shè)計、全網(wǎng)營銷推廣、外貿(mào)建站、網(wǎng)站策劃、面包屑導(dǎo)航、做網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)