2

2つのレイアウトを積み重ねようとしましたが、うまくいかないようです。ビューとして1つのJavaクラスファイルがあります。このファイルには、画面をドラッグして移動できるボールがあります。もう1つは、Eclipseのグラフィカルエディターによって作成されたXMLファイルです。

これは、一度に表示するために使用したコードです。

LinearLayout view = (LinearLayout)LayoutInflater.from(this).inflate(R.layout.main, null);
    LinearLayout layout = new LinearLayout(this);
    // Define the LinearLayout's characteristics
    layout.setGravity(Gravity.CENTER);
    layout.setOrientation(LinearLayout.VERTICAL);
    // Set generic layout parameters
    LayoutParams params = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
    DrawView custom = new DrawView(this);
    layout.addView(view);
    layout.addView(custom, params); 
    setContentView(layout);

ただし、これは両方のビューを示しています。私の唯一の問題は、それらが互いに重なり合っていないことです。今、彼らはお互いの下にいます。また、それらが積み重ねられている場合、両方を透明にする方法はありますか(両方のレイヤーを表示するため)?

4

4 に答える 4

1

必要なコードを指定していますLinearLayout。ただし、子をオーバーラップさせるには、RelativeLayout(またはデクリエーションされた絶対レイアウトを使用する必要があります。さらには機能するFrameLayout可能性があります)。

于 2013-03-20T11:15:49.803 に答える
1

フレームレイアウトを親レイアウトとして使用してから、ビューを親フレームレイアウトに追加します。フレームでは、すべてのビューがスタックされます。透明度については、背景にアルファを設定するか、ビューに透明な背景色を設定できます。

于 2013-03-20T11:40:32.227 に答える
0

親としてのRelativeLayout代わりにを使用する必要があります。LinearLayoutこれにより、ビューを互いに積み重ねることができます。View親に最後に追加されたものが一番上になります。ビューのアルファを設定するには、この質問をご覧ください

于 2013-03-20T11:16:35.790 に答える
0

トップレイヤーに背景色を設定し、トップレイヤーの前面への移動属性を使用する必要があります。背景色を設定できます'#BBCCCCCC'BBは、色の透明度00を定義するためのものです。色を定義します。FFCCCCCC

于 2013-03-20T11:31:56.360 に答える