Androidstudio开发button按钮的操作以及项目开发大致过程
? ? ? 隨著應(yīng)用Androidstudio的不斷深入,對于一個Android項目的開發(fā)流程也是不斷形成這自己的理解。筆者對于Android的學(xué)習(xí)時間比較晚,我沒有使用eclipse對于Android進(jìn)行開發(fā)學(xué)習(xí),接觸Android開發(fā)的時候,Androidstudio3.0就已經(jīng)出來了,而且這畢竟是專門進(jìn)行Android項目開發(fā)的,都說是Google的親兒子,我沒用過eclipse,不發(fā)表什么言論,不過見過有些同學(xué)使用eclipse自我感覺還是Androidstudio方便。對于實驗機,我還是喜歡使用真機進(jìn)行試驗。現(xiàn)在一般的Android機又不貴。我自己的手機因為太久而換的都有三個了。(#^.^#)不知道大伙在Androidstudio開發(fā)過程中有沒有遇到我一樣的問題,防火墻還有360就很煩人,開著這些東西,項目開發(fā)經(jīng)常出問題。特別是R變紅的問題。關(guān)閉防火墻和殺毒系統(tǒng),就沒有遇到這種問題了。這種方法在我這里是有效的。
? ? ? 廢話不多說了,這篇文章主要介紹Androidstudio開發(fā)過程中button按鈕的基本操作,以及本人在參與的幾項學(xué)校組織的項目開發(fā)過程中對于Android項目開發(fā)過程中對于項目開發(fā)過程中的幾點認(rèn)識,分享一下,與諸君共勉吧!
? ? ? 對于button按鈕的操作,主要有三種方法,針對不同的應(yīng)用需求。接下來,筆者對其進(jìn)行一一介紹。
? ? ?首先是做每個項目的第一步,構(gòu)建布局。button控件布局代碼如下:
<Buttonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_centerHorizontal="true"android:layout_centerVertical="true"android:text="按鈕"android:textSize="20sp"/>在布局頁面敲入Button,就可以,然后對其基本屬性進(jìn)行定義。這里主要涉及相對布局功能,這在不做介紹。
? ? ?1、正式且常用
? ? ? 在Button布局中增加屬性:
android:id="@+id/anniu"于界面相對應(yīng)的java代碼進(jìn)行對象綁定,找到操作對象并進(jìn)行方法書寫:
public class MainActivity extends AppCompatActivity { private Button anniu; private int i=0;//記錄點擊次數(shù)@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);anniu=(Button)findViewById(R.id.anniu);anniu.setOnClickListener(new MyClick());}class MyClick implements View.OnClickListener{@Overridepublic void onClick(View view) {i++;anniu.setText("點擊了"+i+"次");}} }結(jié)果如圖:之所以說這是正式且常用,因為這樣開發(fā)出來的項目代碼條理清楚,可讀性強,方便后期維護(hù)。對于小項目開始可能感覺比較麻煩,但是隨著代碼堆疊的逐漸增加,該方法能夠較好的維持主函數(shù)的簡潔,邏輯性強,對于后期bug問題查找以及功能修改有一定的好處。而且正式開發(fā)的時候,button的功能只要邏輯功能稍微復(fù)雜,代碼羅列還是比較多的,所以為了開發(fā)的方便以及后期維護(hù),一般都會使用該方法。
2、較為隨意方法
該方法布局定義與上文相同,不同的是java邏輯部分,為實現(xiàn)上文相同功能,其代碼為:
public class MainActivity extends AppCompatActivity { private Button anniu; private int i=0;//記錄點擊次數(shù)@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);anniu=(Button)findViewById(R.id.anniu);anniu.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {i++;anniu.setText("點擊了"+i+"次");}});} }? ? ? 該方法是把函數(shù)邏輯實現(xiàn)部分寫到了主方法里面,邏輯沒有錯誤,但是很少有人這么使用,只是在開發(fā)過程中作為實驗時進(jìn)行邏輯檢測時使用。通過后又會轉(zhuǎn)移到第一種方法。而且將邏輯實驗書寫到主方法里面會導(dǎo)致代碼混亂,影響可讀性,后期維護(hù)也很麻煩。想想,一個成百上千行代碼都堆疊在一個方法里面。一旦邏輯出現(xiàn)錯誤,或者需要修改其中一塊功能。這個尋找過程是很痛苦的。所以該方法基本不使用,這種方法我只有在剛開始學(xué)習(xí)編程的時候使用。
? ? ? ?3、較為簡易的方式
該方法的實現(xiàn)在button界面定義中添加了一句:
android:onClick="dianji"甚至都不需要進(jìn)行對其設(shè)置id;不過要實現(xiàn)上面的功能還是要綁定button的id的畢竟還要告訴代碼變那個控件。代碼如下:
public class MainActivity extends AppCompatActivity { private Button anniu; private int i=0;//記錄點擊次數(shù)@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);anniu=(Button)findViewById(R.id.anniu);}public void dianji(View view) {i++;anniu.setText("點擊了"+i+"次");} }如果是實現(xiàn)其他一些功能,該代碼會特別簡介。可以說這是最漂亮的一種形式,適合一些簡單功能的事項,比如頁面跳轉(zhuǎn),計數(shù)等。可讀性很強,但是代碼的邏輯性相對于第一種有所下降,所以只能肩負(fù)一些簡單功能。
其實以上就相當(dāng)于一個小項目的開發(fā),其實Android項目開發(fā)無論大型小型無非那幾步,就好比如何把大象塞進(jìn)冰箱一樣,三步走唄。Android開發(fā)也一樣,第一步界面設(shè)計(打開冰箱),第二步控件綁定(把大象塞進(jìn)冰箱),第三步邏輯實現(xiàn)(把冰箱關(guān)上)。隨著獨立開發(fā)幾個項目之后,對Android項目開發(fā)的認(rèn)知也發(fā)生著相應(yīng)的變化,最開始學(xué)的時候感覺第三步是最難的,慢慢的到后期,你會發(fā)現(xiàn)最麻煩,最耗時的其實是第一步。
以上純屬個人看法,歡迎諸君批評指正!
?
總結(jié)
以上是生活随笔為你收集整理的Androidstudio开发button按钮的操作以及项目开发大致过程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: GTA4 难句囧翻
- 下一篇: SOHO果然有巨大收获!