1

ListView を持つ LinearLayout があります。そして、その上のレイアウトは、右に配置され、ListView も持っています。この上部レイアウトを 3 段階の水平な SlidingDrawer (右から左) のような 3 段階のウィジェットとして実装したい: 1) 引き出しが完全に閉じている 2) 引き出しが 50% 開いている 3) 引き出しが完全に開いて画面全体を占める50% 開いている場合、両方の ListViews がクリック イベントをキャッチできるはずです。これを達成する方法を教えてください。

ありがとう

4

1 に答える 1

0

このリンクを見てください。これで始められるはずです:

http://blog.sptechnolab.com/2011/02/10/android/android-sliding-drawer/

レイアウトのないコードは次のようになります。

public class animation extends Activity {
/** Called when the activity is first created. */
CheckBox c1,c2,c3;
int key=0;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main1);

    final TransparentPanel popup = (TransparentPanel) findViewById(R.id.popup_window);
    popup.setVisibility(View.GONE);

    final Button btn=(Button)findViewById(R.id.show_popup_button);
    btn.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View arg0) {
            if(key==0){
                key=1;
                popup.setVisibility(View.VISIBLE);
                btn.setBackgroundResource(R.drawable.slid3_n);
            }
            else if(key==1){
                key=0;
                popup.setVisibility(View.GONE);
                btn.setBackgroundResource(R.drawable.slid4_n);
            }
        }
    });

}
}

それはまさに「2段階」の引き出しです。中間段階の場合、または基本的に 2 つの引き出しが 1 つになっている場合は、コードを自分に合わせて少し調整する必要があります。

于 2012-09-25T17:47:04.057 に答える