青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨筆-80  評論-22  文章-0  trackbacks-0

時間過的真快,斷斷續續做Android的事情也一年多了,剛開始為了參加Google的Android比賽和我哥們Zeaster一起做了一個軟件Zinfo,這個是一個SNS的構思,信息共享平臺,更多的內容可以去訪問我們的網站infosword ,不過去年就已經就停止開發了(木有賺到"刀了",只能先做點別的養家糊口咯-.-),如果有哪位兄弟對他感興趣,或者有更多更好的想法歡迎給我寫Email [haric.zhu@gmail.com],將來也許能重新整理整理繼續開發。

一直想寫博客分享一下自己學習心得和開發經驗,卻一直因為懶惰而沒能堅持。因為一直在網上從各種大蝦那學習經驗,再潛水下去自己都覺得良心不安,所以打算在這里把自己對Android的一些經驗和想法跟大家分享,也督促自己好好學習,天天向上。


[正文]

閑話少說,先來個加強版的HelloWorld介紹一下Android的概況和程序結構吧,這個HelloWorld程序很簡單很簡單,界面如圖所示:
              


 

按一下按鈕,彈出一個對話框,里面寫著Hello World! -.-

 

下面就按步驟走一下開發流程,在這個流程中我會詳細解釋Android的項目結構

1 安裝開發環境:

google推薦我們使用(Eclipse with the ADT plugin),ADT就是Android的開發插件,提供了一些調試工具什么的,在google code的android站點有詳細的介紹,按他標準來,我就不多嘴了[ http://code.google.com/android/intro/installing.html ]

2 新建項目:

 打開eclipse,新建項目->其他->然后選擇Android Project,這時候彈出來一個Title叫New Android Project的對話框,填寫如下圖所示:
 

3 介紹項目結構:

大家看下面的項目結構圖示 :


  

src里com.haric.hello下有一個HelloWorld.java,他的名字就來自于我們新建項目的時候填寫的Acivity name, 這個HelloWorld就繼承自Activity(Android Framework里面最重要的一個類,詳細信息可以參考 -> (Activity ),  我們簡單地理解為它是一個UI的容器,直接跟用戶打交道最前端的類。

 

還有一個R.java,這個類是系統根據res文件夾中的內容自動為你生成的,我們先講一下res文件夾,res是resources的縮寫,顧名思義,你程序中所需要的文字,圖片,布局文件等等資源都是放在這個文件夾下面的,你現在看到這個文件夾下面有
drawable   - 這個是放圖片的
layout       - 這個是放布局文件的
values       - 下面放字符串(strings.xml ),顏色(colors.xml ),數組(arrays.xml )

 

(res下的東東不止這些,更多關于Resouces的相容請參考(Resources ))

 

Android 幫我們把這些資源都管理起來,內容資源化的作用是很明顯的,做國際化方便了,使用同一個資源的時候也方便也更節省空間(全局的引用),res文件夾中內容變化,R.java都會重新編譯同步更新,所以這個類不需要你去手動更新了。

 

最后是AndroidManifest.xml. 你每次添加一個Acivity都需要在這個文件中描述一下,這個文件很重要東東還比較多,將來會詳細講述這個文件的。(To Me:這個地方留個鏈接到時候鏈過去-.-)

 

4 設計界面布局:

接下來咱們要使用R.java了,首先我們在layout里新建一個文件hello_  world.xml, 編輯內容如下:

Xml代碼
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     android:orientation="vertical"  
  4.     android:layout_width="fill_parent"  
  5.     android:layout_height="fill_parent"  
  6.     >  
  7.   
  8.     <Button android:id="@+id/Button01"  
  9.             android:text="@string/click_me"  
  10.             android:layout_width="wrap_content"  
  11.             android:layout_height="wrap_content">  
  12.     </Button>  
  13. </LinearLayout>  
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation
="vertical"
    android:layout_width
="fill_parent"
    android:layout_height
="fill_parent"
    
>

    
<Button android:id="@+id/Button01"
            android:text
="@string/click_me"
            android:layout_width
="wrap_content"
            android:layout_height
="wrap_content">
    
</Button>
</LinearLayout>

有同學問了那個main.xml呢,我建議你把它的名字改成hello_world.xml或者刪刪掉新加一個hello_world.xml,[tips] 因為項目中會有很多個Activity,最好讓你的layout文件的名字跟相應的Activity掛上鉤,方便將來編輯和使用。

 

做完這一步啦,結果是啥?肯定編譯不過唄,嘿嘿,認真的同學肯定注意到
"android:text="@string/click_me" 這行,這個是指定你Button上顯示的文字,我們需要在res/values/strings.xml中加一行<string name="click_me">Click me</string>這樣就能在layout文件中引用這個string資源了,好了布局弄完了,該在程序中使用它了

 

5 在程序中使用布局:

打開HelloWorld.java,編輯內容如下
 

Java代碼
  1. public void onCreate(Bundle savedInstanceState) {   
  2.        super.onCreate(savedInstanceState);   
  3.        setContentView(R.layout.hello_world);   
  4. }  
public void onCreate(Bundle savedInstanceState) {
       
super.onCreate(savedInstanceState);
       setContentView(R.layout.hello_world);
}

  R.layout.hello_world 就指向 hello_world.xml,同理 R.string.click_me就向"Click
  me", 運行一下(右鍵點擊你的項目,run as -> Android Application)看到一個按鈕了吧

6 為按鈕添加點擊事件:
  要為按鈕添加點擊事件,我們需要先得到這個對象,然后設置監聽器,再編寫onClick事件
  完成后代碼如下:

  

Java代碼
  1. import android.app.Activity;   
  2. import android.app.AlertDialog;   
  3. import android.os.Bundle;   
  4. import android.view.View;   
  5. import android.view.View.OnClickListener;   
  6. import android.widget.Button;   
  7.   
  8. public class HelloWorld extends Activity {   
  9.     /** Called when the activity is first created. */  
  10.     @Override  
  11.     public void onCreate(Bundle savedInstanceState) {   
  12.         super.onCreate(savedInstanceState);   
  13.         setContentView(R.layout.main);   
  14.            
  15.         Button button = (Button)findViewById(R.id.Button01);   
  16.         button.setOnClickListener(new OnClickListener(){   
  17.             public void onClick(View arg0) {   
  18.                 openDialog();   
  19.             }   
  20.         });   
  21.     }   
  22.        
  23.     private void openDialog(){   
  24.         AlertDialog.Builder builder = new AlertDialog.Builder(this);   
  25.         builder.setTitle("Hello");   
  26.         builder.setMessage("Hello World \n");   
  27.         builder.setNegativeButton("OK",null);   
  28.         builder.show();   
  29.     }    
  30. }  
import android.app.Activity;
import android.app.AlertDialog;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class HelloWorld extends Activity {
    
/** Called when the activity is first created. */
    @Override
    
public void onCreate(Bundle savedInstanceState) {
        
super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        Button button 
= (Button)findViewById(R.id.Button01);
        button.setOnClickListener(
new OnClickListener(){
            
public void onClick(View arg0) {
                openDialog();
            }
        });
    }
    
    
private void openDialog(){
        AlertDialog.Builder builder 
= new AlertDialog.Builder(this);
        builder.setTitle(
"Hello");
        builder.setMessage(
"Hello World \n");
        builder.setNegativeButton(
"OK",null);
        builder.show();
    } 
}

Button button = (Button)findViewById(R.id.Button01);這句話就是用來獲取layout中設置的界面控件對象的,這個id是在button中指定的android:id="@+id/Button01" 。

 

Android的UI用起來跟SWT是很像的,以后我會挑一些常用的,有趣的UI控件詳細地介紹一下。今天先寫到這里,每次我都會把相應項目的源代碼貼到最下面。

源代碼下載

本文轉自:
http://www.oschina.net/question/16_7599
posted on 2012-04-11 10:48 Bluesea 閱讀(485) 評論(0)  編輯 收藏 引用 所屬分類: Android
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            午夜电影亚洲| 国产乱码精品一区二区三| 亚洲国产毛片完整版 | 欧美中日韩免费视频| 狠狠色狠狠色综合人人| 国产乱码精品一区二区三区不卡| 欧美人与禽猛交乱配| 另类专区欧美制服同性| 久热成人在线视频| 久久中文字幕导航| 欧美二区在线| 国产精品系列在线| 国产日韩欧美在线播放不卡| 国内精品视频在线观看| 狠狠综合久久| 亚洲品质自拍| 亚洲欧美在线免费| 久久久久欧美精品| 日韩一级精品| 午夜影院日韩| 久久精品99国产精品酒店日本| 久久深夜福利| 欧美不卡激情三级在线观看| 日韩视频亚洲视频| 亚洲欧美中日韩| 亚洲欧美日韩一区| 欧美激情小视频| 国产精品v欧美精品v日韩| 开心色5月久久精品| 国产精品国产三级国产普通话蜜臀| 欧美午夜不卡视频| 亚洲日本成人| 亚洲欧美激情四射在线日| 你懂的网址国产 欧美| 一区二区三区视频观看| 欧美在线视频导航| 欧美日韩网站| 一区在线免费| 亚洲欧美春色| 亚洲经典三级| 欧美亚洲在线播放| 欧美大片91| 国产三区二区一区久久 | 亚洲网站在线看| 久久漫画官网| 亚洲一区视频在线| 欧美成人一区二区在线| 欧美成人精品三级在线观看 | 亚洲一区久久久| 亚洲一区二区精品在线| 久久久午夜视频| 久久久午夜电影| 国产精品欧美激情| 日韩午夜精品| 亚洲精品国产精品乱码不99按摩 | 国产欧美日韩另类视频免费观看| 99这里有精品| 欧美激情精品久久久久久久变态| 国产精品99久久99久久久二8| 欧美精品一区二区三区在线看午夜 | 久久综合狠狠| 国产精品国内视频| 亚洲精品一区在线观看| 玖玖综合伊人| 久久国产视频网| 国产精品美女视频网站| 亚洲精品日韩激情在线电影| 久久久久99| 久久久免费精品| 国产欧美另类| 久久久av毛片精品| 性视频1819p久久| 国产精品综合视频| 午夜精品视频在线观看| 一区二区三区欧美激情| 最新日韩欧美| 国产精品嫩草99av在线| 亚洲伊人网站| 亚洲欧美日韩国产| 国产精品视频第一区| 亚洲国产欧美一区二区三区同亚洲| 欧美成人高清视频| 蜜桃av一区二区三区| 一本色道久久88综合亚洲精品ⅰ | 欧美在线视频一区二区| 亚洲一区二区三区在线看| 国产精品二区三区四区| 亚洲资源在线观看| 一区二区三区欧美视频| 国内视频精品| 模特精品裸拍一区| 国产精品国产自产拍高清av| 欧美在线精品免播放器视频| 狂野欧美一区| 亚洲社区在线观看| 夜夜嗨av一区二区三区中文字幕| 欧美天堂亚洲电影院在线播放| 亚洲一区二区视频在线观看| 欧美在线视频在线播放完整版免费观看| 国产日韩欧美夫妻视频在线观看| 午夜精品久久久久99热蜜桃导演| 欧美色视频日本高清在线观看| 亚洲欧洲综合另类| 欧美在线资源| 你懂的视频一区二区| 欧美福利一区二区| 久久精品72免费观看| 久久精品一区中文字幕| 国产日韩在线看片| 亚洲人妖在线| 国产日韩欧美在线观看| 亚洲国产精品一区二区www| 国产精品国产三级国产专播品爱网 | 欧美日韩精品一区二区三区| 亚洲午夜精品在线| 久久精品亚洲一区二区| 国产日韩av在线播放| 欧美激情一区二区三区高清视频 | 一区二区视频欧美| 一二三四社区欧美黄| 开元免费观看欧美电视剧网站| 欧美亚洲在线观看| 蜜桃av综合| 久久人人超碰| 欧美日韩精品免费看| 日韩视频二区| 美女精品在线观看| 欧美亚洲一区三区| 欧美精品日韩一本| 免费成人高清在线视频| 国产精品久久久久9999高清 | 亚洲成色最大综合在线| 欧美视频亚洲视频| 亚洲国产成人在线| 国产一区99| 99在线视频精品| 一本色道久久88综合日韩精品| 久久久久国产精品厨房| 久久久人成影片一区二区三区| 国产精品第2页| 久久蜜臀精品av| 国产欧美一区二区三区视频| 亚洲级视频在线观看免费1级| 日韩午夜三级在线| 浪潮色综合久久天堂| 欧美激情第3页| 18成人免费观看视频| 欧美中文字幕久久| 久久爱www| 国产日韩在线视频| 午夜日韩福利| 久久精品国产免费观看| 国产亚洲精久久久久久| 午夜亚洲影视| 国产目拍亚洲精品99久久精品| 亚洲欧美日韩精品在线| 亚洲欧美日产图| 亚洲高清久久| 一区在线免费| 久久婷婷国产综合精品青草 | 99精品欧美| 日韩一级大片| 欧美精品一区二区精品网| 亚洲国产精品第一区二区| 欧美午夜电影网| 亚洲一区二区精品在线观看| 欧美一级艳片视频免费观看| 国内精品视频在线播放| 久久久91精品国产一区二区精品| 欧美国产日韩一区| 亚洲欧洲综合另类在线| 欧美一区二视频在线免费观看| 欧美va天堂| 亚洲日本中文| 国产伦精品一区二区三区四区免费 | 亚洲一区二区av电影| 久久午夜色播影院免费高清| 在线播放豆国产99亚洲| 亚洲欧美一区在线| 亚洲精美视频| 亚洲视频高清| 一区在线免费观看| 欧美精品国产精品| 欧美一区二区免费观在线| 久久色中文字幕| 亚洲综合电影| 精品51国产黑色丝袜高跟鞋| 欧美成人精品高清在线播放| 欧美一区二区三区在线视频| 欧美高清视频免费观看| 久久精品中文字幕免费mv| 亚洲高清在线播放| 国产精品视频免费在线观看| 久久亚洲影院| 欧美黄色精品| 久久综合电影一区| 午夜精品视频一区| 亚洲男女自偷自拍| 亚洲人妖在线| 亚洲乱码国产乱码精品精|