我已經創建了一個自己的看法:安卓:自己的視圖添加到LinearLayour
private class SampleView extends View {
,我想「植物」這一說法成的LinearLayout,我在XML文件中創建的。 我該怎麼做?有人能幫我嗎?
我已經創建了一個自己的看法:安卓:自己的視圖添加到LinearLayour
private class SampleView extends View {
,我想「植物」這一說法成的LinearLayout,我在XML文件中創建的。 我該怎麼做?有人能幫我嗎?
嘗試添加自定義View
這樣的:
<view
class="test.project.app.Compass$SampleView"
//... other attributes
/>
您的自定義View
類必須是public
和static
上面的代碼工作。 另一種選擇是將SampleView
放在其自己的文件中,並簡單地使用上述答案中的代碼。
在佈局文件中添加
<LinearLayout >
<com.yourpackagename.SampleView />
<LinearLayout>
或
LinearLayout lLayout = (LinearLayout)findViewById(R.id.linearlayout);
lLayout.addView(new SampleView());
只需使用您的自定義視圖類的完全限定名
<LinearLayout ...>
<your.package.SampleView
android:layout_width=".."
android:layout_height=".."
..
>
</your.package.SampleView >
..
</LinearLayout>
但是,刪除 「私有」從你的類定義中,如果它嵌套類添加static。
不能使用內部類在這一點上
我試過了,但它給了我例外:java.lang.RuntimeException:無法啓動活動ComponentInfo {test.project.app/test.project.app.Compass}:android.view.InflateException:二進制XML文件行#14:錯誤膨脹類test.project.app.Compass.SampleView – user934779
我在我的Compass.java類中聲明SampleView – user934779
請發佈您的當前代碼和完整的異常日誌。照顧嵌套類,必須是靜態的 –