2017-04-18 52 views

回答

-1

framelayout,Relative View和其他一些代表了Android中的視圖,並從視圖組擴展。

片段是一個對象,用於表示用戶界面的一部分,通常託管在一個活動中。

片段有一個viewgroup,您可以分配一個XML佈局。在XML中,如果您希望在片段中表示視圖組的佈局,您可以指定一個視圖組,該視圖組可以是一個框架佈局。

碎片和框架佈局不能互換使用。

話雖如此,你可以創建一個Android應用程序,而不使用片段,並使用視圖組。

3

爲了在屏幕上立即顯示單個片段,可以,可以交替使用片段或FrameLayout。

單一片段,方法1

顯示通過片段標籤的片段是這樣的XML:

<fragment class="com.example.ExampleFragment" 
     android:id="@+id/details" android:layout_weight="1" 
     android:layout_width="0px" android:layout_height="match_parent" /> 

單一片段,方法2

通過的FrameLayout顯示的片段會看像XML一樣:

<FrameLayout android:id="@+id/details" android:layout_weight="1" 
      android:layout_width="0px" android:layout_height="match_parent" /> 

跟着Ja VA這樣的代碼:

Fragment newFragment = new ExampleFragment(); 
FragmentTransaction transaction = getFragmentManager().beginTransaction(); 
transaction.replace(R.id.details, newFragment); 
transaction.addToBackStack(null); 
transaction.commit(); 

多個片段

方法2則支持改變你以後出了什麼片段通過運行多個Java代碼來改變片段是什麼有算賬:

Fragment secondFragment = new SecondExampleFragment(); 
FragmentTransaction transaction = getFragmentManager().beginTransaction(); 
transaction.replace(R.id.details, secondFragment); 
transaction.addToBackStack(null); 
transaction.commit(); 

所以FrameLayout爲您提供了使用片段標籤的額外功能。

+0

嗯,這解決了我的疑問。今天,我在XML文件中使用了,然後在java文件中使用了fragmentManager部分。在UI中有重複,現在我明白了爲什麼。 –

相關問題