跳至主内容
版本:0.77

DrawerLayoutAndroid

非官方测试版翻译

本页面由 PageTurner AI 翻译(测试版)。未经项目官方认可。 发现错误? 报告问题 →

React 组件,封装了 Android 平台的 DrawerLayout(仅限 Android)。抽屉(通常用于导航)通过 renderNavigationView 渲染,其直接子组件是主视图(放置内容的位置)。导航视图初始时不可见,但可通过 drawerPosition prop 指定的窗口边缘拉出,其宽度可通过 drawerWidth prop 设置。

示例


参考

属性

View 属性

继承 View 属性


drawerBackgroundColor

指定抽屉背景色。默认值为 white。如需设置透明度请使用 rgba 格式。示例:

tsx
return (
<DrawerLayoutAndroid drawerBackgroundColor="rgba(0,0,0,0.5)" />
);
TypeRequired
colorNo

drawerLockMode

指定抽屉的锁定模式。抽屉有三种锁定状态:

  • unlocked(默认):抽屉响应触摸手势(打开/关闭)

  • locked-closed:抽屉保持关闭状态,不响应手势

  • locked-open:抽屉保持打开状态,不响应手势(仍可通过编程方式调用 openDrawer/closeDrawer 开关)

TypeRequired
enum('unlocked', 'locked-closed', 'locked-open')No

drawerPosition

指定抽屉滑入的屏幕侧边。默认值为 left

TypeRequired
enum('left', 'right')No

drawerWidth

指定抽屉宽度,即从窗口边缘拉出视图的宽度。

TypeRequired
numberNo

keyboardDismissMode

控制拖拽时是否关闭键盘:

  • 'none'(默认):拖拽不关闭键盘

  • 'on-drag':拖拽开始时关闭键盘

TypeRequired
enum('none', 'on-drag')No

onDrawerClose

导航视图关闭时触发的回调函数。

TypeRequired
functionNo

onDrawerOpen

导航视图打开时触发的回调函数。

TypeRequired
functionNo

onDrawerSlide

导航视图发生交互时触发的回调函数。

TypeRequired
functionNo

onDrawerStateChanged

抽屉状态变化时触发的回调函数。抽屉有三种状态:

  • idle:当前无导航视图交互

  • dragging:正在与导航视图交互

  • settling:导航视图交互结束,正在执行开/关动画

TypeRequired
functionNo

renderNavigationView

渲染在屏幕侧边且可被拉出的导航视图。

TypeRequired
functionYes

statusBarBackgroundColor

使抽屉覆盖整个屏幕并绘制状态栏背景,允许抽屉在状态栏上方打开。此属性仅在 API 21+ 生效。

TypeRequired
colorNo

方法

closeDrawer()

tsx
closeDrawer();

关闭抽屉导航。


openDrawer()

tsx
openDrawer();

打开抽屉导航。