SurfaceViewを使用しようとしています。そこで、以下のコードに示すように、レイアウトファイルにSurfaceViewウィジェットを作成しました。私が持っている問題は、SurfaceViewにウェイトを設定する方法です。コードに以下に示すように は私が設定:SurfaceViewが画面の特定のセクションを占めるようにする方法
android:layout_weight=".4"
をまだSurfaceViewがeintire画面を占有し、私が欲しいのはSurfaceViewは、画面のわずか40%を占めているようにすることです。私はこのリンクの投稿にも言及しましたSurfaceView in Layout xmlファイルからSurfaceViewへの重みを設定する方法は示されていません。
xmlファイルからSurfaceViewの重さを設定する方法を教えてください。
コード:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.example.surfaceview_00.MainActivity">
<SurfaceView
android:id="@+id/mainActivity_surfaceView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight=".4"/>
</RelativeLayout>
が更新:
私はまた、以下のコードを試してみましたが、それでも私は、画面全体を占有する1つのSurfaceViewを得ました。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.example.surfaceview_00.MainActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:weightSum="2">
<SurfaceView
android:id="@+id/mainActivity_SurfaceView1"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1" />
<SurfaceView
android:id="@+id/mainActivity_SurfaceView2"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"/>
</LinearLayout>
</RelativeLayout>
"でも、画面全体を占めるSurfaceViewは1つしかありません。" SurfaceViewは1つしかないことをどうやって知っていますか? –
@ Code-Apprentice私は上記の更新セクションでipostedコードで述べたので。私は直線レイアウト内に2つのサーフェスビューを持ち、それぞれがlayout_weoght = .5に割り当てられています。実行時には1つのサーフェイスビューしか表示されず、画面全体を占めています – user2121