2012-04-30 3 views
1

LinearLayoutの上部にボタンを配置し、その下のビューをボタンに表示するのはなぜか分かりません。しかし、私がビューの下にボタンを置くと、ビューはそれをカバーします。トップすべてのボタンと例えばビューはそれらの下にあるものを隠すのはなぜですか?

が表示されている:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:orientation="vertical" > 

    <Button 
     android:id="@+id/button1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Button" /> 


    <View 
     android:id="@+id/view1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" /> 

</LinearLayout> 

しかし、あなたは、ビューの下にボタンを配置する場合、あなたは唯一のビューを見ることができます:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:orientation="vertical" > 

    <View 
     android:id="@+id/view1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" /> 


    <Button 
     android:id="@+id/button1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Button" /> 

</LinearLayout> 

これはなぜでしょうか?その下に置かれた物を包むことのないようにするにはどうすればいいですか?

答えて

0

ビューの下に配置されているものを折り返さないようにするにはどうすればよいですか?

Viewに高さを指定します。

<View 
    android:id="@+id/view1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" /> 

タグ定義が不明瞭であり、レンダリングできません。これは、Androidが

<View 
    android:id="@+id/view1" 
    android:layout_width="wrap_content" 
    android:layout_height="fill_parent" /> 

にこれを回すであり、したがって、窓の外にあなたのButtonを推進しているように見えます。

+0

これで、ボタンを画面から押して、実際には覆わないだけですか?私は私のビューに一定の高さを割り当てたいとは思わない。私はちょうど底から物事を押し出すことなく、それがトップを埋めるようにしたい。何か案は? – Josh

+0

Android to Josh:「トップを埋める」と言うと、画面を水平に塗りつぶすことを話しているのでしょうか?どのように垂直に振る舞いますか?必要に応じてハードコーディングするか、実行時に設定することを検討できますが、高さを設定する必要があります。これで必要なものが達成されたら、ボタンで余白を使用することを検討できます。 –

+0

さて、私はそれがボタンを押し下げ、それを隠さないことを学んだ。私は手動で高さを設定し、それを押し下げませんでした。だから私はそれを実行したり、実行時にそれをより良く処理しなければならない。 – Josh

0

あなたのビューは、LinaerLayout、相対レイアウト、テーブルレイアウト、絶対レイアウトなどのすべてのレイアウト/ビューのカスタムビューおよびルートであるためです(チュートリアルでは線形レイアウトは表示できません)。ここではまだ幅と高さを決めるまではありません。クラスによってカスタム化し、幅と高さをonMeasureに設定すると、実行時にボタンが下に表示されます。

関連する問題