Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Caused by: android.view.InflateException: Binary XML file line #11: Error inflating class

Caused by: android.view.InflateException: Binary XML file line #11: Error inflating class

編輯:關於Android編程

重寫Android默認Button按鈕引發異常:

Caused by: android.view.InflateException: Binary XML file line #11: Error inflating class com.example.activity1.TestButton

自定義控件的代碼如下,只是簡單重寫onTouchEvent方法,一直沒辦法正常使用。

public class TestButton extends Button {

	public TestButton(Context context) {
		super(context);
		// TODO Auto-generated constructor stub
	}
	
	@Override
	public boolean onTouchEvent(MotionEvent event) {

		boolean value = super.onTouchEvent(event);
		System.out.println("super.onTouchEvent: " + value);
		return value;
	}
}

報出異常的原因是由於少添加了個一個構造方法,參數為(Context, AttributeSet),其中第二個參數用來將xml文件中的屬性初始化。

自定義控件若需要在xml文件中使用,就必須重寫帶如上兩個參數的構造方法。添加後即可正常使用了。

	public TestButton(Context context, AttributeSet attributeSet) {
		super(context, attributeSet);
		// TODO Auto-generated constructor stub
	}



  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved