Bắt đầu với các đoạn Android

Tôi thích học những điều mới, nhưng tôi không phải là người dừng lại và tái cấu trúc mọi ứng dụng mà tôi từng xây dựng chỉ vì một mẫu thiết kế, widget hoặc mô hình mới được công bố. Tôi đánh giá cao sự cố gắng và sự thật, và trong khi tôi cố gắng để mắt mở và tai xuống đất, tôi thích một lý do thuyết phục để thêm một cây búa mới vào hộp công cụ kỹ thuật số của tôi.

Cách làm này đã đưa tôi vào hàng rào về các mảnh Android trong một thời gian. Tôi đã tham dự một vài hội thảo về chủ đề này, đọc một số bài đăng trên blog tốt về các mảnh vỡ (bao gồm một bài của blogger đồng nghiệp TechRepublic của tôi, Kyle Miller) và biết rằng có một API tương thích, nhưng tôi đã chậm chạp nhảy vào các mảnh vỡ xe lửa.

Sau đó vài tuần, tôi đã mua và bắt đầu sử dụng Sony Tablet S. Trong vài ngày, tôi bắt đầu thấy sự hấp dẫn của các mảnh vỡ. Trên thực tế, không đưa ra bất kỳ quyết định có ý thức nào để làm như vậy, tôi thấy mình tránh các ứng dụng không hỗ trợ bố cục dựa trên phân đoạn trực quan. Đối với hồ sơ, bao gồm tất cả các ứng dụng tôi đã mã hóa và phát hành ra thị trường cho đến thời điểm này.

Nhận thức đó đánh tôi như một tấn gạch. Tôi rút chiếc máy tính xách tay cũ ra, xắn tay áo lên và bắt đầu khám phá những mảnh vỡ một cách nghiêm túc. Những gì tôi nhanh chóng tìm thấy là các mảnh đơn giản thêm vào trải nghiệm người dùng cuối đi kèm với mức giá phức tạp cho nhà phát triển. Không sao đâu. Vào cuối ngày, nỗ lực tạo ra một ứng dụng không thành vấn đề trừ khi có ai đó muốn sử dụng thành phẩm. Tôi _think_ Tôi đang tập trung vào các khái niệm triển khai đoạn quan trọng. Quan trọng hơn, tôi được bán trên ý tưởng về những mảnh vỡ sắp tới.

Hướng dẫn sau đây là một giao diện dựa trên phân mảnh. Nếu bạn đã suy nghĩ về việc thử API phân đoạn trong ứng dụng của mình, thì hướng dẫn này là dành cho bạn. Bạn có thể theo dõi hoặc tải xuống dự án và nhập trực tiếp vào Eclipse.

1. Tạo một dự án Android mới bằng Eclipse. Để hỗ trợ các mảnh vỡ, bạn phải nhắm mục tiêu Android 3.0 (Honeycomb) hoặc cao hơn. Hãy chắc chắn thay đổi tên của hoạt động khởi động thành Main.java.

2. Đối với bản demo, chúng tôi sẽ sử dụng hai bố cục: Một để đại diện cho thùng chứa chính chứa hai mảnh vỡ và thứ hai để xác định đoạn chi tiết của chúng tôi. Đoạn danh sách chúng ta sẽ xác định trong mã bằng cách mở rộng lớp ListFragment tiện dụng. Thêm các bố cục sau vào thư mục / res / layout của bạn.

 tệp chính 

"1.0" mã hóa = "utf-8" ?>

"http://schemas.android.com/apk/res/android"

android: layout_creen = "fill_parent"

android: layout_height = "fill_parent"

android: direction = "ngang" >

android: id = "@ + id / Frag_series"

android: layout_creen = "200dip"

android: layout_height = "match_parent"

android: layout_marginTop = "? android: attr / actionBarSize"

class = "com. mượtwjf.hello_fragments.ListFrag" />

android: id = "@ + id / Frag_capt"

android: layout_creen = "match_parent"

android: layout_height = "match_parent"

class = "com. mượtwjf.hello_fragments.DetailFrag" />

detail_fragment.xml

"1.0" mã hóa = "utf-8" ?>

"http://schemas.android.com/apk/res/android"

android: layout_creen = "match_parent"

android: layout_height = "match_parent"

android: direction = "vertical" >

android: id = "@ + id / đội trưởng"

android: layout_creen = "quấn_content"

android: layout_height = "match_parent"

android: layout_gravity = "centre_horizontal | centre_vertical"

android: layout_marginTop = "20dip"

android: text = "Johnathan Archer"

android: textAppparent = "? android: attr / textAppparentLarge"

android: textSize = "30dip" />

3. Chúng tôi đã sẵn sàng để chuyển sang thư mục nguồn. Vì các đoạn hoạt động gần giống như các hoạt động, mã trong Main.java không làm gì khác hơn là tải bố cục trên cùng.

 Gói Main.java com. Mượtwjf.hello_fragments; nhập android.app.Activity; nhập android.os.Bundle; lớp công khai Chính mở rộng Hoạt động { 

@Ghi đè

công khai void onCreate (Gói đã lưuInstanceState) { super .onCreate (yetInstanceState);

setContentView (R.layout. chính );

}

}

4. Việc triển khai Chi tiếtFrag.java của chúng tôi gần như đơn giản; nó làm tăng một khung nhìn và hiển thị một phương thức setText.

 Chi tiếtFrag.java gói com. Mượtwjf.hello_fragments; nhập android.app.Fragment; nhập android.os.Bundle; nhập android.view.LayoutInflater; nhập android.view.View; nhập android.view.Viewgroup; nhập android.widget.TextView; lớp công khai Chi tiếtFrag mở rộng Fragment { 

@Ghi đè

công khai void onCreate (Gói đã lưuInstanceState) { super .onCreate (yetInstanceState);

}

@Ghi đè

công khai void onActivityCreated (Gói đã lưuInstanceState) { super .onActivityCreated (yetInstanceState);

}

@Ghi đè

Chế độ xem công khai xem lại ;

}

công khai void setText (Chuỗi mục) {

Chế độ xem TextView = (TextView) getView (). FindViewById (R.id. Captain );

view.setText (mục);

}

}

5. Cuối cùng là tệp ListFrag.java. Chúng tôi tạo chế độ xem danh sách, thực hiện nhấp chuột và sử dụng trình quản lý phân đoạn để tham chiếu một phân đoạn từ phân đoạn khác. Trong phương thức onListItemClick (), hãy chú ý kiểm tra xem đoạn đích có tồn tại trong bố cục cụ thể này hay không - cho phép nhà phát triển triển khai bố cục riêng cho các thiết bị màn hình nhỏ hơn như điện thoại. Có lẽ nếu bài đăng này tạo ra đủ sự quan tâm, tôi sẽ quay lại và mở rộng hướng dẫn này để làm điều đó.

 Gói ListFrag.java com. Mượtwjf.hello_fragments; nhập android.app.ListFragment; nhập android.os.Bundle; nhập android.view.View; nhập android.widget.ArrayAd CHƯƠNG; nhập android.widget.ListView; ListFrag lớp công khai mở rộng ListFragment { 

@Ghi đè

công khai void onCreate (Gói đã lưuInstanceState) { super .onCreate (yetInstanceState);

}

@Ghi đè

công khai void onActivityCreated (Gói đã lưuInstanceState) { super .onActivityCreated (yetInstanceState); Chuỗi value = new String {"Enterprise", "Star Trek", "Next Generation", "Deep Space 9", "Voyager"}; Bộ điều hợp ArrayAd CHƯƠNG = new ArrayAd CHƯƠNG (getActivity (), android.R.layout. Simple_list_item_1, giá trị);

setListAdOG (bộ chuyển đổi);

}

@Ghi đè

công khai void onListItemClick (ListView l, Xem v, vị trí int, id dài ) {

Chuỗi mục = (Chuỗi) getListAd CHƯƠNG (). GetItem (vị trí);

Chi tiếtFrag Frag = (Chi tiếtFrag) getFragmentManager (). FindFragmentById (R.id. Frag_capt );

if (Frag! = null && Frag.isInLayout ()) {

Frag.setText (getCapt (mục));

}

}

Chuỗi riêng getCapt (Chuỗi tàu) { if (ship.toLowerCase (). chứa ("doanh nghiệp")) { return "Johnathan Archer";

}

if (ship.toLowerCase (). chứa ("star trek")) { return "James T. Kirk";

}

if (ship.toLowerCase (). chứa ("thế hệ tiếp theo")) { return "Jean-Luc Picard";

}

if (ship.toLowerCase (). chứa ("không gian sâu 9")) { return "Benjamin Sisko";

}

if (ship.toLowerCase (). chứa ("chuyến đi")) { return "Kathryn Janeway";

}

trả lại "???";

}

}

Chúng tôi đã sẵn sàng để thực hiện bản demo. Nếu bạn sở hữu một máy tính bảng Android, hãy tiếp tục và tải APK về thiết bị. Nếu không, bạn có thể dễ dàng mô phỏng máy tính bảng bằng cách sử dụng plugin ADB cho Eclipse và Trình quản lý thiết bị ảo Android bằng cách thực hiện theo các bước sau:

1. Tạo một thiết bị mô phỏng chạy API Android cấp 11.

2. Đặt da thành 1280x800 pixel.

3. Tăng số ram thiết bị lên 1024.

4. Đặt mật độ LCD thành 149.

Điều này sẽ mang lại cho bạn trải nghiệm gần giống như một thiết bị Motorola Xoom thế hệ đầu tiên.

Ở đó bạn có nó - một giao diện người dùng dựa trên phân đoạn thô sơ nhưng có chức năng. Càng đào sâu vào API, tôi càng nhận được sự đánh giá cao về cả tính linh hoạt và sức mạnh của các mảnh vỡ.

Hình A

Hình B

Nếu bạn có suy nghĩ hoặc trải nghiệm với các mảnh Android, hãy chia sẻ chúng với cộng đồng TechRepublic. Chúng tôi muốn nghe từ bạn.

© Copyright 2020 | mobilegn.com