2015-07-02 14 views
7

là nó có thể giải thích cho tôi trong mã này:Các android: Thuộc tính tên trong <fragment>

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="horizontal" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 
    <fragment android:name="com.example.news.ArticleListFragment" 
      android:id="@+id/list" 
      android:layout_weight="1" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" /> 
    <fragment android:name="com.example.news.ArticleReaderFragment" 
      android:id="@+id/viewer" 
      android:layout_weight="2" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" /> 
</LinearLayout> 

là những gì ArticleListFragmentArticleReaderFragmet ???

tôi không biết họ đề cập đến những gì ??? vào lớp Fragment (hoặc phân lớp của nó) sử dụng trong mã nguồn hoặc tệp XML để bố trí ???

nếu chúng là các tệp XML nơi chúng phải được định vị ???

+0

http://developer.android.com/guide/components/fragments.html – CommonsWare

Trả lời

7

ArticleListFragment và ArticleReaderFragment là tên của các lớp chứa mã java cho các đoạn này.

Như đã được đề cập trước khi bạn có thể có mảnh vỡ bên trong có chứa hoạt động, nhưng không phải là cách hay để làm như vậy.

Để có ví dụ điển hình, hãy thử tạo "Hoạt động trống với phân đoạn" bằng trình hướng dẫn Android Studio. Nó sẽ tạo ra một lớp hoạt động và một lớp phân đoạn cùng với 2 tệp XML cho hoạt động và phân đoạn tương ứng.

2

Chúng đề cập đến hai phân lớp của Fragment, một gọi là ArticleReaderFragment tên khác được gọi là ArticleListFragment. Gói cho cả hai đều giống nhau, com.example.news. Android sẽ xử lý ngay cả cho bạn

1

Các ArticleListFragmentArticleReaderFragment trỏ đến lớp bạn có thể tìm thấy trên đường dẫn com/example/news/... Các lớp đó phải là các lớp con của lớp Fragment.

Điều đó có nghĩa là các lớp đó cần tồn tại trong mã của bạn, để làm cho ví dụ XML này hoạt động.

Theo tôi đây là tất cả thực sự sạch sẽ giải thích trên http://developer.android.com/guide/components/fragments.html#Adding

4
<fragment android:name="com.example.app.myFragment"/> 

Thuộc tính tên được sử dụng để xác định các lớp Fragment được sử dụng để tạo ra các Xem hệ thống phân cấp - trong trường hợp này myFragment.java.

+0

vì vậy u có nghĩa là tôi phải triển khai lớp myFragment trong một tệp riêng biệt ??? không phải trong mã nguồn hoạt động mà tôi muốn thực hiện phân đoạn cho điều đó ??? –

+0

Bạn có thể làm cả hai cách, trước tiên bạn có thể triển khai phân đoạn trong hoạt động của mình hoặc bạn có thể triển khai lớp phân đoạn bổ sung, tôi tham khảo cách thứ hai, xem ví dụ này http://examples.javacodegeeks.com/android/core/app/fragment/android-fragments-example / – eddykordo

Các vấn đề liên quan