我知道很多人都有過類似的問題,這一點,但我不能找到一個解決我的自定義視圖是不可見的。我創建了一個擴展SurfaceView的自定義視圖。當我使用這個視圖完美的作品:嵌入裏面的時候HorizontalScrollView
setContentView(graphView);
但是我希望它被嵌入在HorizontalScrollView內。如果我用xml試試這個:
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<HorizontalScrollView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:fillViewport="true">
<com.stuff.graph.GraphView
android:id="@+id/graph"
android:layout_width="fill_parent"
android:layout_height="fill_parent"/>
</HorizontalScrollView>
</FrameLayout>
然後我得到一個致命的異常,我的應用程序關閉。
如果我嘗試使用編程解決這個問題:
graphView = new GraphView(this);
graphView.setVisibility(View.VISIBLE);
myScrollView = new HorizontalScrollView(this);
graphView.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
myScrollView.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
myScrollView.addView(graphView);
setContentView(myScrollView);
這時屏幕只是黑色的。我也在上面顯示的代碼上嘗試了很多變體,但都沒有成功。我哪裏錯了?
你的GraphView擴展了什麼.. – ngesh
它擴展了SurfaceView,實現了SurfaceHolder.Callback – user650309