Android SlidingDrawer 滑动抽屉效果

  \

20121022031344272.png (386×570)

效果如上图,想必你们已经在不少应用中看到过了,下面来看看用SlidingDrawer 实现滑动抽屉效果html

从Android1.5开始,加入了android.widget.SlidingDrawer类java

SlidingDrawer控件的一些属性:android

    android:allowSingleTap 指示是否能够经过handle打开或关闭
    android:animateOnClick 指示是否当使用者按下手柄打开/关闭时是否该有一个动画。
    android:content 隐藏的内容
  android:handle handle (控制)web

布局文件:布局

<LinearLayout  
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"  
    android:orientation="vertical" 
    android:background="@drawable/f"> 
    <TextView 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:gravity="center_vertical|center_horizontal"/> 
    <SlidingDrawer 
        android:id="@+id/slidingdrawer" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:content="@+id/content" 
        android:handle="@+id/handle" 
        android:orientation="vertical" > 
        <ImageView 
            android:id="@id/handle" 
            android:layout_width="wrap_content" 
            android:layout_height="wrap_content" 
            android:src="@drawable/music_list_btn" > 
        </ImageView> 
        <LinearLayout 
            android:id="@id/content" 
            android:layout_width="match_parent" 
            android:layout_height="match_parent" 
            android:background="@drawable/t"> 
            <TextView 
                android:layout_width="match_parent" 
                android:layout_height="match_parent" 
                android:text="隐藏的内容"/> 
        </LinearLayout> 
    </SlidingDrawer> 
</LinearLayout>

经过布局文件就已经实现了上面的效果,此外SlidingDrawer还提供了一些方法:动画

SlidingDrawer sd = (SlidingDrawer)findViewById(R.id.slidingdrawer); 
         
        sd.setOnDrawerOpenListener(new OnDrawerOpenListener(){ 
            public void onDrawerOpened() { 
                // TODO Auto-generated method stub 
            } 
        }); 
        sd.setOnDrawerCloseListener(new OnDrawerCloseListener(){ 
            public void onDrawerClosed() { 
                // TODO Auto-generated method stub 
            } 
        }); 
        sd.setOnDrawerScrollListener(new OnDrawerScrollListener(){ 
            public void onScrollEnded() { 
                // TODO Auto-generated method stub 
            } 
            public void onScrollStarted() { 
                // TODO Auto-generated method stub 
            }    
        });
相关文章
相关标签/搜索