2011-12-14 7 views
0

Android用のHotmailアプリを考えてみましょう。電子メールアイテムをチェックすると、下部に3つのボタンが表示されます。[マーク読み取り] [未読マーク] [削除] チェックを外すと、ボタンが再び離されます。Android:Hotmailアプリのような非表示のボタンバー

これのレイアウトは何ですか? (最後の項目を見ることができない)私はこれを試してみたが、それは一番下にある問題をスクロール利回り:

<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" > 

    <ListView 
     android:id="@+id/list" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:background="@android:color/black" /> 
</LinearLayout> 

<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:background="@android:color/darker_gray" 
    android:orientation="horizontal" 
    android:paddingLeft="5dip" 
    android:paddingRight="5dip" 
    android:paddingTop="5dip" > 

    <Button 
     android:id="@+id/bottom" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:enabled="false" 
     android:text="@string/mark_read" /> 
</LinearLayout> 

はその後、私もこのようなものを表示/非表示にする必要があります?

答えて

2

下の線のレイアウトの表示を変更すると、その線が表示/非表示になります。あなたはリストビューまたは変更の下部にオーバーレイボタンを非表示/だからのいずれかを行うことができショー、それにRelativeLayoutオーバーレイがコンポーネントを表示するために発生、その後のIDやスクロールの問題については

LinearLayout bottomLayout = (LinearLayout)findViewById(R.id.someId); 
bottomLayout.setVisibility(View.GONE)// or View.VISIBLE 

を与える必要がありますListViewがボタンの前で終わり、可視性を変更するように、LinearLayoutへのRelativelayout。

突然ボタンが表示され、ListView自体のサイズを変更する必要がある場合、これは非常によく見えるとは思えませんが。可視

setVisibility(View.GONE); 

注レイアウトからビューを削除し、他のコンポーネントは、このによるリサイズできます。しかし、ビューはレイアウトで取り上げたスペースを

setVisibility(View.INVISIBLE); 

を続けて使用すると、単にビューが見えなくなり、サイズ変更が発生しません。

+0

ヒントをお寄せいただきありがとうございます。 'LinearLayout'を使用すると、私のサンプルコードのように、ボタンバーを一番下に置くことはできません。または私はできますか? Hotmailアプリケーションはこれをエレガントに解決します(ボタンバーにも影が表示されます)。最善のアプローチが何であるか分かりません...あなたの隠れ/ショーコードを試してみましょう。 – l33t

+0

これは私の他の問題を解決します:http://stackoverflow.com/questions/3393385/android-scrollview-in-relativelayout-with-buttonbar – l33t

+0

あなたは、あなたが別の線図レイアウトであなたのレイアウトをラップし、垂直方向への向き、また私は可視性についての注釈で私の答えを編集しました – triggs

関連する問題