通过抽屉组件可以将一些组件隐藏到屏幕外面,使用时,才将其拉出来,不用的时候,还可以放回去。
使用时,要注意,抽屉由两部分组件:抽屉把手(Handle)和抽屉具体内容(Content)
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="底部的文字" />
<SlidingDrawer
android:id="@+id/sliding"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:content="@+id/content_layout"
android:handle="@+id/handle_img"
android:orientation="horizontal" >
<ImageView
android:id="@id/handle_img"
android:layout_width="30dp"
android:src="@drawable/handle"
android:layout_height="800dp" />
<LinearLayout
android:id="@id/content_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#0000ff" >
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:text="这里是抽屉内容"
android:textColor="#00ff00" />
</LinearLayout>
</SlidingDrawer>
</RelativeLayout>
可以通过加入监听,来改变抽屉把手的显示图片。
public class MainActivity extends Activity {
private SlidingDrawer drawer;
private ImageView img;
@SuppressWarnings("deprecation")
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Globals.init(this);
// 设置默认使用的布局文件
setContentView(R.layout.activity_main);
img = (ImageView) findViewById(R.id.handle_img);
drawer = (SlidingDrawer) findViewById(R.id.sliding);
drawer.setOnDrawerOpenListener(new OnDrawerOpenListener() {
@Override
public void onDrawerOpened() {
img.setImageResource(R.drawable.handle_back);
}
});
drawer.setOnDrawerCloseListener(new OnDrawerCloseListener() {
@Override
public void onDrawerClosed() {
img.setImageResource(R.drawable.handle);
}
});
}
}