2011年11月19日 星期六

建立一個Android新專案

啟動Eclipse      輸入磁碟機代號       路徑是預設      建議最好是將Eclipsez放在磁碟機中
這樣到哪專案和程式都跟著走,只要在個別電腦中安裝JAVA JDK即可
NEW Project建立一個新專案

File     New AndroidProject



開啟 Eclipse,執行功能表 File \ New \ Android Application Project,在 New Android App 對話方塊的 Application Name 欄位輸入專案名稱,Project Name 及 Package Name 系統會自動建立但是讀者可以自行更改。Build SDK的部分建議可還是先行使用2.3.1,否則使用預設值即可。按 Next 鈕繼續。
接下來設定應用程式的圖示,預設值為人像 (對話方塊右方的圖示),如果要更換圖示,按 Choose 鈕選擇圖示。Image 按鈕可以使用自行製作的圖示,Text 則使用文字取代圖示。按 Next 鈕繼續。

選取 Create Activity 項目,同時選取 BlankActivity 建立新的空白頁面 (若取消核選 Create Activity 項目,同時選取 MasterDetailFlow 表示要使用平板裝置專用的兩欄式結構)。若新頁面及配置檔都使用預設名稱,可按 Finish 鈕完成專案建立;若要變更新頁面或配置檔名稱,可按 Next 鈕繼續。
Activity Name 修改為「專案名稱+Activity」也可以設成專案名稱,此處輸入「Test1Activity」;Layout Name  輸入「main」,按 Finish 鈕完成專案建立。

Application name(應用程式名稱)
Package name(套件名稱)每一個專案都要有自己的套件名稱,否則會產生執行的error
Create Activity(Activity class的子類別)
Minimum SDK (支援最低SDK版本)目前手機大部分為2.2或2.3.1版本,所以建議設為2.2較佳










































13 則留言:

  1. [2011-11-26 10:47:21 - ddms]Failed to reopen debug port for Selected Client to: 8700
    [2011-11-26 10:47:22 - ddms]Address family not supported by protocol family: bind
    java.net.SocketException: Address family not supported by protocol family: bind
    at sun.nio.ch.Net.bind(Native Method)
    at sun.nio.ch.ServerSocketChannelImpl.bind(Unknown Source)
    at sun.nio.ch.ServerSocketAdaptor.bind(Unknown Source)
    at sun.nio.ch.ServerSocketAdaptor.bind(Unknown Source)
    at com.android.ddmlib.MonitorThread.reopenDebugSelectedPort(MonitorThread.java:716)
    at com.android.ddmlib.MonitorThread.run(MonitorThread.java:226)

    [2011-11-26 11:02:02 - ddms]Can't bind to local 8600 for debugger
    [2011-11-26 11:02:27 - ddms]Can't bind to local 8601 for debugger

    回覆刪除
  2. 到project→properties→Run/Debug setting delet your
    project

    回覆刪除
  3. 您好 想請問 版本不同 會有很大的差異嗎??

    回覆刪除
    回覆
    1. 目前新版確實有一些差異,我會在這一兩天更新補上,以供參考

      刪除
    2. 老師您好
      如果想請教老師一些問題
      能否在這裡尋問呢?

      刪除
    3. OK啊!!沒問題我會盡快回覆您的問題

      刪除
  4. int i=0;
    int pointerCount = event.getPointerCount();
    sb.append(String.format("節點數: %d %n", pointerCount));
    for ( i = 0; i < pointerCount; i++)
    {
    sb.append(String.format("pointer %d: (%.1f,%.1f) %n",
    event.getPointerId(i), event.getX(i), event.getY(i)));


    if (event.getX(i) > 200 && event.getX(i)<400 && event.getY(i) > 200 && event.getY(i)<400)
    sb.append("YES!\n");
    else
    sb.append("NO!\n");

    }
    這段程式碼 是我在一些小測試
    測試多點觸控做到幾個點

    後來 我又想
    那我能不能設一個座標範圍
    當一個觸控點到達範圍時
    顯示YES~ 其餘顯示NO~~
    目前我都可以做到
    但是~~問題卡在 我要做第二個範圍時
    卻卡住了@@
    (意思就是 A點移動到範圍一 B點移動到範圍二 兩者皆成立的時候
    才會顯示YES~ 這有什麼方法嗎??
    請老師指點迷津~~謝謝^^
    有其他線上聯絡方式嗎??
    怕這樣很佔篇幅~~

    回覆刪除
    回覆
    1. 還有個問題
      有辦法把抓到的座標
      存放在陣列裡面嗎??

      刪除
    2. 設兩個boolean變數isTouchA

      if( 觸碰範圍一)
      {
      isTouchA = true;
      }
      if( 觸碰範圍二 && isTouchA)
      {
      顯示yes;
      }

      刪除
  5. 您可以建一個MotionEvent的陣列,存放座標。

    回覆刪除
  6. 作者已經移除這則留言。

    回覆刪除