我将导航抽屉用于我的应用程序,您可以在 android studio 中添加它,并且我向导航抽屉添加了一些菜单项(请参阅代码块)。如果我按下第一个项目 (nav_home) 或第二个,导航抽屉会突出显示当前按下的项目。
如果我按下项目“nav_information”按钮或其他项目,新的(单击的)片段会打开并且没有突出显示(主页或第二个项目仍然突出显示)
很快,只有第一项在所选项目处显示突出显示。
<?xml version="1.0" encoding="utf-8"?>
<group android:checkableBehavior="single">
<item
android:id="@+id/nav_home"
android:icon="@drawable/ic_home_black"
android:title="Startseite" />
<item android:id="@+id/nav_greetings"
android:title="Grußwort"/>
</group>
<group android:checkableBehavior="single">
<item android:title="Neuigkeiten">
<menu >
<item
android:id="@+id/nav_information"
android:icon="@drawable/ic_info_black"
android:title="@string/title_activity_aktuelles" />
</menu>
</item>
</group>
....
Run Code Online (Sandbox Code Playgroud)
这就是我处理碎片打开的方式。
@SuppressWarnings("StatementWithEmptyBody")
@Override
public boolean onNavigationItemSelected(MenuItem item) {
// Handle navigation view item clicks here.
int id = item.getItemId();
Fragment myFragment = null;
if (id == R.id.nav_home) {
drawer.setSelected(true);
myFragment = new MainScreen();
}else if (id == R.id.nav_greetings){
myFragment = new Greetings();
} …Run Code Online (Sandbox Code Playgroud) Android应用程序Thrutu将抽屉放在呼叫屏幕的顶部,该屏幕具有多种功能,仅占用屏幕的一小部分.下面的呼叫控制按钮仍然可以正常工作.即使是透明的活动也不会允许这种行为.有关如何实现这一点的任何想法?
我正在使用导航抽屉,如下所示:Android示例.目前,Actionbar是静态的,当抽屉打开/关闭时它不会移动(只有它的标题更改).我该如何应用这个效果:

我希望整个ActionBar随Sliding片段一起移动.并且ActionBar上的名称和按钮保持不变.请告诉我你需要看什么代码.
另外,问题2:
当你使用时,DrawerLayout你在xml中包含FrameLayout(用于content_frame)和ListView(你添加导航设置的地方......在那个抽屉里,你可以修改布局,这样你就不仅可以添加ListView而且可以添加其他视图了?在ListView的顶部或底部?像这样:

我想添加没有超链接的ImageView(不是超链接,只是图像)和附加TextViews(用于说明).
我正在开发一个带导航抽屉的应用程序.但是在右上角总是有"设置"选项卡.如何在普通视图中删除抽屉中的那些菜单?
如何使用Mike Penz使用Material Drawer库删除显示AccountHeader的已连接帐户的下拉菜单?
我目前的代码:
// Create the AccountHeader
AccountHeader headerResult = new AccountHeaderBuilder()
.withActivity(this)
//.withHeaderBackground(R.drawable.header)
.addProfiles(
new ProfileDrawerItem().withName(displayName).withEmail(email).withIcon(firebaseUser.getPhotoUrl())
)
.withCompactStyle(true)
.withTextColor(getResources().getColor(R.color.itemTextColor))
.build();
Run Code Online (Sandbox Code Playgroud) 我有一个悬停在视图上的抽屉。用户可以垂直向上拖动打开,向下拖动关闭。我的开合部分工作顺利。我遇到的问题是确保拖动动画在距离手机屏幕顶部约 200 像素时停止,并且从屏幕底部拖动不超过 100 像素。这是一个绝对元素,我已经使用了Animated.ValueXY(). 我知道我需要在onPanResponderMove: (e, gestureState) =>{}函数中停止动画。我试过 stopAnimation 但它似乎没有任何影响。
这就是导致阻力发生的原因-
onPanResponderMove: (e, gestureState) => {
return Animated.event([null, {
dy: this.state.drag.y,
}])(e, gestureState)
},
Run Code Online (Sandbox Code Playgroud)
{...this.panResponder.panHandlers}在视图上使用,用户可以拖动以拖动整个抽屉。就像一个把手。
this.state.drag.getLayout()在样式中使用,在我想要拖动以响应拖动“手柄”的视图上。
任何回应表示赞赏!
我有一个黑色背景的脚手架,它的抽屉也是黑色的。由于打开抽屉时发生的淡入淡出效果是淡入“Colors.black54”(不透明度为 54% 的黑色),因此抽屉的边框不可见。
我希望它褪色为灰色,不透明度为 54%。
我发现可以做到这一点的唯一方法是直接修改 Flutter 的源代码文件“drawer.dart”(第 382 行),但这不是一个实际的解决方案,它更像是一个 hack。
return new Scaffold(
backgroundColor: Colors.black,
drawer: new Drawer(
child: new Container(
color: Colors.black,
child: new Center(
child: new Text(
'Test',
style: new TextStyle(
color: Colors.white
)
)
),
),
),
);
Run Code Online (Sandbox Code Playgroud) 我正在使用带有抽屉的 Material UI。
在抽屉里,是一组可折叠的列表。当我展开列表时,列表文本项可能很长,而抽屉跳出的范围更广。我希望抽屉的宽度是窗口大小的 30%,但是当我尝试在抽屉上设置类时,root 和模态 classNames 似乎都没有固定抽屉宽度。
这是抽屉代码:
<Drawer classes={drawerClasses} open={showStandardDrawer} anchor={"right"} onClose={closeDrawer}>
{Array.from(items).map((item, index) => {
return (
<List
key={`list-${index}`}
component="div"
aria-labelledby="nested-list-subheader"
subheader={
<ListSubheader component="div" id="nested-list-subheader">
{item.title}
</ListSubheader>
}
className={classes.root}
>
{ item.elements.map((el, index) => {
return (
<React.Fragment key={index}>
<ListItem key={index} button onClick={() => handleExpand(index)}>
<ListItemText primary={el.name} />
{open[index] ? <ExpandLess /> : <ExpandMore />}
</ListItem>
<Collapse in={open[index]} timeout="auto" unmountOnExit>
{ el.descriptions.map((description, index) => {
return (
<List key={`l-${index}`} component="div" disablePadding>
<ListItem button className={classes.nested} >
<ListItemIcon>
<StarBorder …Run Code Online (Sandbox Code Playgroud) 我正在使用 ListTile 在导航抽屉上显示项目,但我很难创建 isSelected Color 并使用它将其应用到 onTap,但不断收到有关索引的错误,并且应用程序无法识别 isSelected bool在 onTap 上:
for(int i = 0; i < isSelected.length; i++){
setState(() {
if (index == i) {
isSelected[index] = true;
} else { //the condition to change the highlighted item
isSelected[i] = false;
}
});
Run Code Online (Sandbox Code Playgroud)
这是我在 Flutter 中创建的导航抽屉,如果您可以提供有关如何获取 _createDrawerItem Widget 中的“isSelected”并将其应用到抽屉的建议。我已经将“isSelected”设置为 true 和 false 到抽屉项目,但似乎无法将其应用于 onTap。
class NavDraw extends StatefulWidget {
@override
_NavDrawState createState() => _NavDrawState();
}
class _NavDrawState extends State<NavDraw> {
@override
void initState() {
super.initState();
}
Widget build(BuildContext context) …Run Code Online (Sandbox Code Playgroud) 我的应用程序有问题,我正在实现Tabs导航,我也想要一个导航抽屉.问题是,老实说,我不知道如何正确地做到这一点,我已经使用了developers.android.com上给出的示例,但它没有使用ViewPager.如果我在另一个应用程序中使用它,它的效果很好
我的LogCat是这样的:
11-13 15:47:38.096: E/FragmentManager(15675): No view found for id 0x7f070043 (com.videotrafico:id/content_frame) for fragment PlanetFragment{41f34380 #0 id=0x7f070043}
11-13 15:47:38.096: E/FragmentManager(15675): Activity state:
11-13 15:47:38.116: E/FragmentManager(15675): Local FragmentActivity 41ed6cd0 State:
11-13 15:47:38.116: E/FragmentManager(15675): mCreated=falsemResumed=false mStopped=false mReallyStopped=false
11-13 15:47:38.126: E/FragmentManager(15675): mLoadersStarted=false
11-13 15:47:38.126: E/FragmentManager(15675): FragmentManager misc state:
11-13 15:47:38.126: E/FragmentManager(15675): mActivity=com.videotrafico.MainActivity@41ed6cd0
11-13 15:47:38.126: E/FragmentManager(15675): mContainer=android.support.v4.app.FragmentActivity$2@41ed8638
11-13 15:47:38.126: E/FragmentManager(15675): mCurState=1 mStateSaved=false mDestroyed=false
11-13 15:47:38.126: E/FragmentManager(15675): View Hierarchy:
11-13 15:47:38.126: E/FragmentManager(15675): com.android.internal.policy.impl.PhoneWindow$DecorView{41ed91c8 V.E..... ... 0,0-0,0}
11-13 15:47:38.126: E/FragmentManager(15675): android.widget.LinearLayout{41ed99d0 V.E..... ... 0,0-0,0}
11-13 15:47:38.126: …Run Code Online (Sandbox Code Playgroud) drawer ×10
android ×6
navigation ×4
flutter ×2
account ×1
animation ×1
colors ×1
css ×1
dart ×1
header ×1
highlighting ×1
listview ×1
material-ui ×1
menu ×1
menuitem ×1
react-native ×1
reactjs ×1
sliding ×1