Giới thiệu về phát triển Android khi sử dụng Eclipse và các widget của Android(P2)

Giới thiệu về phát triển Android khi sử dụng Eclipse và các widget của Android(P2)

Tạo một dự án Android

Đây là cách tạo một dự án Android mới trong Eclipse (xem Hình 1):

  1. Từ Eclipse, chọn File > New > Project. Một thư mục có tên là Android sẽ có mặt trong hộp thoại nếu trình cắm thêm ADT cho Eclipse đã được cài đặt thành công. Mở rộng thư mục đó sẽ cung cấp tùy chọn cho một dự án Android mới. Chọn nó và nhấn Next.
  2. Bạn sẽ được nhắc điền các chi tiết sau đây vào trong một biểu mẫu:
  • Project name (Tên dự án) — Đây là tên của dự án của bạn và có thể là cái tên nào đó như "HelloWorld" chẳng hạn.
  • Application name (Tên ứng dụng) — Đây là tên sẽ xuất hiện ở khắp mọi nơi trong thiết bị Android của bạn, cùng với các biểu tượng trong trình đơn, trong các phím tắt và trên thanh tiêu đề khi bạn chạy ứng dụng của mình. Đây cũng có thể là cái tên nào đó như là "Hello Android."
  • Package name (Tên gói)com.example.helloandroid hoặc vùng tên riêng của bạn. Tên gói theo cùng các quy tắc như các tên gói trong ngôn ngữ Java.
  • Create activity (Tạo hoạt động) — Ở đây, với mục đích minh họa, ta có thể gọi nó là SaySomething (Nói gì đó). Đây là tên cho lớp sẽ được ADT (Các công cụ phát triển Android) tạo ra. Đây sẽ là một lớp con của lớp Activity của Android. Một hoạt động đơn giản là một lớp có thể chạy và thực hiện một số công việc. Nó có thể có một giao diện người dùng. Một ứng dụng có thể chứa một hoặc nhiều hoạt động. Thông thường chúng có mối quan hệ 1:1 với các màn hình có trong một ứng dụng. Một ứng dụng di chuyển từ một hoạt động này sang một hoạt động khác bằng cách gọi một phương thức có tên là startActivity() hay startSubActivity().
  • Min SDK version (Phiên bản SDK tối thiểu) — Điều này quy định mức API tối thiểu theo yêu cầu của ứng dụng của bạn. Phiên bản mới nhất là 7.

Hình 1. Tạo một dự án Android mới

Các chi tiết của dự án Hello Android (Chào Android)

Hello Android là một dự án Android cơ bản, chỉ đơn giản in Hello World trên màn hình. Nó có vai trò sau trong bài viết này:

  • Để trình diễn quá trình tạo một dự án Android mới.
  • Để đưa ra một tổng quan về các tệp trong một dự án Android và mục đích của chúng.
  • Để trình diễn cách triển khai một ứng dụng trên AVD và thử nghiệm nó.

Để xem các tệp và phần tài nguyên khác của dự án Android hãy sử dụng khung nhìn Package Explorer (Trình thám hiểm gói) trong Eclipse (Window > Show View > Package Explorer). Dự án Android vừa được tạo ra sẽ bao gồm các thứ sau (xem Hình 2):

  • Có hai thư mục chứa mã nguồn:
  1. src chứa tất cả các lớp do người dùng xác định, bao gồm lớp hoạt động mặc định.
  2. gen chứa các tệp do ADT tạo tự động. Tệp R.java bên trong thư mục này chứa các tham chiếu tĩnh tới tất cả tài nguyên hiện có trong thư mục res để cho chúng có thể được tham khảo dễ dàng và động từ mã Java. Không nên sửa đổi thủ công các nội dung của R.java.

Hình 2. Các nội dung của dự án Hello Android

  • Một thư mục res chứa tất cả các tài nguyên cho dự án: các biểu tượng, các hình ảnh, các chuỗi ký tự và các bố trí. Việc có một thư mục tài nguyên tách riêng giữ cho các tài nguyên không phải mã nguồn ở ngoài mã nguồn và các tài nguyên có thể được lựa chọn động dựa trên phần cứng, ngôn ngữ, hướng trang và vị trí.

Nó bao gồm:

    1. (Các) thư mục drawable — dành cho tất cả các tệp hình ảnh.
    2. Thư mục layout (bố trí) — dành cho các bố trí quy định các màn hình giao diện người dùng cho các hoạt động, dưới dạng mã XML. Tệp Main.xml được tự động tạo ra. Thư mục này gắn liền với cách bố trí thẳng đứng mặc định. Để biểu diễn một số giao diện người dùng theo bố trí nằm ngang (khi một thiết bị Android xoay 90 độ), tạo một thư mục layout-land (vùng bố trí) và đặt tệp XML bố trí của bạn ở đó. Tệp main.xml có một biểu diễn giao diện người dùng hấp dẫn, như trong Hình 3. Bạn có thể kéo và thả các bố trí khác nhau và các khung nhìn trên một màn hình trống để xây dựng các thành phần giao diện người dùng cho hoạt động này.
    3. Thư mục values (các giá trị) — dành cho tất cả các cặp tên-giá trị (các chuỗi ký tự mà ứng dụng của bạn sẽ xác định).
  • Tệp AndroidManifest.xml cũng là một phần quan trọng của dự án. Nó tương đương với tệp plugin.xml cho các trình cắm thêm. Về cơ bản nó định nghĩa các hoạt động trong các ứng dụng và quy định các hành động đã được chỉ rõ cho mỗi hoạt động. Nó cũng liệt kê ra các quyền hạn mà ứng dụng yêu cầu để thực hiện các hành động khác nhau. Một lần nữa, tệp này có một giao diện người dùng đẹp.

Hình 3. Giao diện người dùng cho tệp main.xml

Hãy xem xét các nội dung thực tế của thư mục project (dự án) trên đĩa. Mở Navigator View (Khung nhìn của dẫn hướng) trong Eclipse (Window > Show View > Navigator). Bạn sẽ nhận được cấu trúc cho dự án HelloWorld như trong Hình 4. Ngoài các tệp class được biên dịch, bạn nhận được ba tệp sau đây trong thư mục bin:

  1. Tệp classes.dex — Tệp có thể thực thi được tạo ra từ các lớp biên dịch.
  2. Tệp HelloWorld.apk — Tệp lưu trữ nén sẽ được chuyển đến thiết bị Android. Ứng dụng này có thể được cài đặt trên thiết bị Android bất kỳ thông qua tệp lưu trữ này.
  3. Tệp resources.ap_ — Tệp các tài nguyên ứng dụng nén.

Cấu trúc thư mục của dự án Android

'Hoạt động' chính của ứng dụng

Chúng ta hãy xem xét MainActivity.java.

 Liệt kê 1. Tệp MainActivity.java

package com.example.helloandroid;

import android.app.Activity;
import android.os.Bundle;

public class MainActivity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }
}

Những điều cần lưu ý về tệp này là:

  • Tệp MainActivity mở rộng một lớp Android cơ bản có tên là Activity, nằm trong gói android.app.
  • Phương thức onCreate() là điểm nhập mặc định cho hoạt động này và phải được triển khai thực hiện cho từng hoạt động mới. Nó nhận một đối số kiểu Bundle (bó). Các tùy chọn và các tham số cần thiết cho việc tạo hoạt động này được chuyển vào tham số này.
  • Phương thức setContentView() có trách nhiệm tạo giao diện người dùng chính sử dụng đối số R.layout.main. Đây là một hằng số được định nghĩa trong R.java và biểu diễn cách bố trí chủ yếu có trong các tài nguyên của ứng dụng đó.

Tệp Main.xml

Tệp XML này mô tả giao diện người dùng (UI) của ứng dụng. Một hoạt động có thể tham chiếu đến UI này. Tuy nhiên, UI này không tự ràng buộc nó vào bất kỳ hoạt động nào. Một UI được xây dựng bằng cách sử dụng các bố trí và các widget. Tệp main.xml mà Eclipse xây dựng theo mặc định gồm có một LinearLayout duy nhất, có nghĩa là tất cả các phần tử được sắp xếp trong một cột duy nhất. Rồi nó định nghĩa một textView, được dùng để hiển thị văn bản tĩnh không chỉnh sửa được. Trong trường hợp này, chuỗi "hello" được định nghĩa trong tệp strings.xml (ký hiệu '@' dùng để chỉ một tệp được định nghĩa trong thư mục res). Mỗi phần tử khung nhìn bổ sung có các thuộc tính, như là layout_height (độ cao_ bố trí) và layout_width (độ rộng_bố trí), v.v.

Hình 5. Tệp Main.xml và khung nhìn properties (các đặc tính)

Một cách dễ dàng để làm việc với tệp main.xml là thông qua khung nhìn các đặc tính (Window > Show View > Other > General > Properties). Khi chọn một khung nhìn cụ thể trong khung nhìn phác thảo, tab các đặc tính được điền đủ tất cả các thuộc tính có khả năng của khung nhìn đó, như trong Hình 5. Hầu hết các thuộc tính này chỉ có thể chọn một số giá trị cố định, và các giá trị cố định này lại có thể được chọn từ một trình đơn thả xuống bên cạnh mỗi thuộc tính trong tab các đặc tính. Ví dụ, để thiết lập thuộc tính layout_height, bạn có thể nhìn thấy hộp thả xuống và nhận ra rằng nó chỉ có hai giá trị được phép: wrap_contentfill_parent. (wrap_content sẽ chỉ dựng lên khung nhìn theo kích thước ban đầu của nó, trong khi fill_parent sẽ co giãn nó để bao trùm toàn bộ chiều cao hoặc chiều rộng hoặc cả hai).
Lưu ý: Với các thuộc tính layout_heightlayout_width, bạn cũng có thể xác định kích thước theo hai đơn vị sau: (a) Các điểm ảnh độc lập với mật độ (dp) — Kích thước này cho phép bố trí giống nhau khi được xem trên các thiết bị có các kích thước màn hình khác nhau. Ví dụ: layout_width = 10dp; (b) Các điểm ảnh độc lập co giãn được (sp) — Tương tự như dp, nhưng đây là tiêu chuẩn được khuyến nghị dành cho các máy điện thoại di động. Ví dụ: layout_width = 10sp.) Một điều quan trọng khác cần lưu ý là nếu bạn muốn tham khảo một số khung nhìn/widget nào đó từ trong mã Java, thì cần phải có một mã định danh (ID) duy nhất. Nếu bạn sử dụng tab bố trí của tệp main.xml để kéo và thả một widget, thì ADT sẽ tự động tạo một ID cho widget đó, có dạng sau "@+id/someView." Sau đó, trong mã Java, sau đó bạn có thể tham chiếu nó như R.id.someView.

Bạn thấy bài viết này như thế nào?: 
No votes yet
Ảnh của Binh Tran Thanh

Drupal Consultant

Started my career as a drupal8 developer in EM Solutions . I love learning Web technologies like HTML, CSS, PHP, Jquery Ajax and Drupal backend . Currently working as a drupal backend developer.

Advertisement

 

jobsora

Dich vu khu trung tphcm

Dich vu diet chuot tphcm

Dich vu diet con trung

Quảng Cáo Bài Viết

 
Khắc phục hỏng hóc máy in canon, epson

Khắc phục hỏng hóc máy in canon, epson

Ai cũng có lúc ghét máy in. Khi bạn cần in nhất thì lại có một bảng báo lỗi ngớ ngẩn, hay làm bạn rối tung vì bị kẹt giấy hoặc lem mực.

Phần mềm theo dõi điện thoại: Đe dọa nghiêm trọng bí mật đời tư

Phần mềm theo dõi điện thoại: Đe dọa nghiêm trọng bí mật đời tư

Điện thoại thông minh đời mới nhất như: iPhone, Nokia, Sam Sung, LG… đều có thể bị cài đặt phần mềm theo dõi để trộm cắp thông tin. Những lời chào mời mua phần mềm theo dõi điện thoại được đăng tải rất công khai trên mạng.

iPad là sản phẩm bị ghét nhất thế giới

iPad là sản phẩm bị ghét nhất thế giới

Sự thành công của iPad là không thể phủ nhận bởi nó vẫn là máy tính bảng phổ biến nhất hiện nay. Tuy nhiên nó cũng là máy tính bảng bị ghét nhất thế giới.

Công ty diệt chuột T&C

 

Diet con trung