2012-02-27 48 views
1
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
CoverFlow coverFlow = new CoverFlow(this); 
setContentView(coverFlow); 
} 

這是我的代碼,但現在我想在同一個文件中放置一個佈局。 任何建議,請.......如何在xml中放置java類

+0

我不認爲你可以使用的setContentView兩次 – waqaslam 2012-02-27 08:31:57

+1

如何佈局中使用的CoverFlow的例子是在這裏 http://code.google.com/ p/android-coverflow/source/browse/res/layout/main.xml那個你不能使用的佈局有什麼問題? – 2012-02-27 08:35:30

+1

@Waqas - 調用'setContentView'兩次沒有任何問題。 (在'onCreate'中做兩次相當無用,但這是另一回事。) – 2012-02-27 08:41:13

回答

2

只需使用完全限定的名稱作爲根元素標記,即可在XML文件中使用自定義視圖。如果CoverFlow在包com.example,你會編寫它是這樣的:

<?xml version="1.0" encoding="utf-8"?> 
<com.example.CoverFlow 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" /> 

然後,如果上面有文件res/layout/main.xml中,你會通過調用使用它:

setContentView(R.layout.main); 
0

我認爲你可以使用的RelativeLayout作爲父母查看 使用RelativeLayout.addView(CoverFlow的,新的LayoutParams(fillParent,fillParent)); setContentView(RelativeLayout);

如果你想顯示另一個。 你可以用RelativeLayout.removeView(coverFlow); 並將目標一個添加到RelativeLayout。

1

我不是確保無論您是在談論到包括Custom Components您已經定義爲的CoverFlow,如果你談論的是包括在您的XML佈局該組件的CoverFlow那麼這裏是一個基本的例子:

<view 
    class="com.example.CoverFlow" 
    id="@+id/CoverFlow" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:background="@android:drawable/empty" 
    android:padding="10dip" 
    android:scrollbars="vertical" 
    android:fadingEdge="vertical" /> 
0

每次通過調用顯示一個視圖:viewSwitcher.showNext();

<ViewSwitcher android:id="@+id/main_container" 
     android:layout_width="fill_parent" android:layout_height="fill_parent"> 
     <com.example.CoverFlow 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" /> 
     <include layout="@layout/your_layout_here" android:layout_gravity="center" 
      android:layout_width="fill_parent" android:layout_height="wrap_content" /> 
    </ViewSwitcher> 

顯示由overlaping:

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
          android:orientation="vertical" android:id="@+id/container" 
          android:layout_width="wrap_content" android:layout_height="wrap_content"> 
          <com.example.CoverFlow 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" /> 

     <!-- the other View/Layout here-> 

</FrameLayout> 
相關問題