0

アクティビティ (setContentView メソッド) によってホストされているメイン レイアウトがあります。

レイアウトにボタンがあります。このボタンをクリックすると、新しいレイアウトが左/上から画面の中央までスライドダウンします。そのため、画面には 2 つのレイアウトがあり、1 つが上に、もう 1 つがそのすぐ下にあります。

これは、タッチ ジェスチャを使用して設定レイアウトをプルダウンできる Android Jelly Bean の UI のようなものです。

可能な実装は何ですか?

私が試した方法:

  1. スライド ダウン レイアウトを main.xml に追加しますが、その可視性をなくなったように設定します
  2. ボタンがクリックされると、レイアウトの可視性を VISIBLE に設定し、いくつかのアニメーションを追加するコードを実行します。
  3. この実装の結果、このレイアウトは残りのビューを押し下げて、それ自体に「スクイーズ」スペースを確保しますが、これは私が意図したものではありません (上記を参照)。

    <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        android:paddingBottom="5dp"
        android:paddingTop="5dp" >
    
        <LinearLayout
            android:id="@+id/PR_slidedown"   <---this is the intended slidedown layout
            android:layout_width="8dp"
            android:layout_height="40dp"
            android:visibility="gone"
            android:orientation="vertical" >
        </LinearLayout>
         ....
    
4

1 に答える 1

0

実装は部分的に正しいです。他の部分は、2 つのレイアウトを FrameLayout でホストして、互いにオーバーラップできるようにすることです。ここで FrameLayout を検索してください。使用方法の例がたくさんあります。

または、SlidingDrawerを試してください

于 2013-04-12T17:13:48.580 に答える