2012-01-04 71 views
1

我有一個複雜的結構要顯示在屏幕上。用XML佈局製作。垂直方向和縱向佈局不同。InvocationTargetException在自定義類的構造函數中

如果翻轉屏幕布局,則重新繪製並初始化GUI。在水平佈局上,我使用CustomRelativeLayout,其中覆蓋onMeasure()

的幾個簡單的轉數之後顯示來自了java.lang.RuntimeException的錯誤消息:無法啓動活動ComponentInfo android.view.InflateException:二進制XML文件行#146:錯誤充氣類此鏈接進入的元件我的CustomRelativeLayout和更低引起:java.lang.reflect.InvocationTargetException引用我的自定義類的構造函數。

我懷疑這個活動根本沒有時間被摧毀並重新開始,但是如何解決這個問題我沒有最朦朧的想法。我會很感激你的幫助。

+0

你在使用嵌套佈局嗎? – kosa 2012-01-04 14:58:26

+0

是的,我正在使用嵌套佈局 – anaxdem 2012-01-04 15:02:18

+0

查看如果您有太多不受android支持的嵌套視圖,則會發生InflateException。嵌套視圖更好地改變你的方法。你有多少嵌套視圖。 – kosa 2012-01-04 15:07:54

回答

2

InvocationTargetException是一個檢查的異常,它包裝由調用的方法或構造函數拋出的異常。您的自定義類的構造函數拋出異常。您需要查看嵌套在InvocationTargetException中的異常,以確定您的類正在拋出哪個異常。

+0

如何捕獲此異常?我不明確地調用構造函數,在渲染布局時調用,並且在類構造函數中不能放入try/catch – anaxdem 2012-01-04 15:10:31

+0

通常,通過查看堆棧跟蹤來診斷這類問題,您會看到類似'Exception in線程「main」java.lang.reflect.InvocationTargetException ...引起:java.lang.IOException'。您是否在InvocationTargetException中看到任何嵌套異常的證據?是否有可能提供整個堆棧跟蹤? – piepera 2012-01-04 15:38:50

+0

我的android.view.InflateException:二進制XML文件行#146:錯誤充氣類,這行是在xml佈局文件 – anaxdem 2012-01-04 15:42:59