2015-03-02 46 views
2

我有很多自定義控件的axml文件。這個控件在myapp.xxx命名空間中定義。所以,我axml-文件看起來像:如何在Android axml文件中爲自定義控件定義默認命名空間?

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
     xmlns:local="http://schemas.android.com/apk/res-auto" 
     android:orientation="vertical" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent"> 
      <myapp.xxx.CustomControl 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        ... 
      /> 
    </ScrollView> 

現在我想用沒有命名空間這個控制,如:

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:local="http://schemas.android.com/apk/res-auto" 
    android:orientation="vertical" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"> 
     <CustomControl 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       ... 
     /> 
</ScrollView> 

但我有一個異常時,應用程序呈現這樣的佈局:

android.view.InflateException: Binary XML file line #1: Error inflating class CustomControl 

我該怎麼辦?

回答

0

你可以嘗試參考定製的控制器名或類標籤它應該工作

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:local="http://schemas.android.com/apk/res-auto" 
    android:orientation="vertical" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"> 
     <CustomControl 
       class="myapp.xxx.CustomControl" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       ... 
     /> 
</ScrollView> 
相關問題