2012-12-06 40 views
0

我有一個描述包含按鈕,圖像和文本的對話框的XML文件。爲了覆蓋onClick並讓它在對話框中調用所有的小部件,我寫了一個擴展了RelativeLayout的子類。現在我想將XML文件與子類相關聯。我可以不使用充氣器嗎?如何將一個子類與XML文件關聯?

<RelativeLayout 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" > 


      <ImageView 
       android:id="@+id/imageView1" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_marginLeft="20dp" 
       android:layout_marginTop="20dp" 
       android:clickable="true" 
       android:duplicateParentState="true" 
       android:onClick="onClick" 
       android:src="@drawable/ic_launcher" /> 

      <EditText 
       android:id="@+id/TextView1" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_alignParentRight="true" 
       android:layout_marginLeft="20dp" 
       android:layout_marginRight="20dp" 
       android:layout_marginTop="20dp" 
       android:layout_weight="1" 
       android:duplicateParentState="true" 
       android:ems="10" 
       android:focusable="false" 
       android:focusableInTouchMode="false" 
       android:inputType="textMultiLine" 
       android:text="text" > 

       <requestFocus /> 
      </EditText> 

     </RelativeLayout> 

感謝, 西蒙

+0

顯示的XML文件,這一切佈局 - 目前還不清楚你想要達到的目標。 – Squonk

回答

3

肯定。不要輸入RelativeLayout,而要爲你的子類使用完整的包名稱。

<com.example.MySubclassRelativeLayout 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" > 
     ... 
    </com.example.MySubclassRelativeLayout > 
0

,你可以把這些小部件到例如dialogwidgets.xml佈局,那麼你可以使用包括標籤插入任何你想要

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_width=」match_parent」 
    android:layout_height=」match_parent」 
    android:background="@color/app_bg" 
    android:gravity="center_horizontal"> 

    <include layout="@layout/dialogwidgets"/> 

    <TextView android:layout_width=」match_parent」 
       android:layout_height="wrap_content" 
       android:text="@string/hello" 
       android:padding="10dp" /> 

    ... 

</LinearLayout> 
相關問題