- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我用 Android Studio 2.0 创建了一个新的应用程序,我想在 Toolbar
下方放置 Navigation Drawer。我知道 Material Design 规范说它应该位于 Toolbar
上方,但我的 Drawer 不会有那么多条目,我想看到 Google 提供的整洁的图标动画。
我想通过将 DrawerLayout
放在顶层 CoordinatorLayout
中来获得我想要的东西。
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:context="com.company.app.MainActivity">
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/AppTheme.AppBarOverlay">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:popupTheme="@style/AppTheme.PopupOverlay" />
</android.support.design.widget.AppBarLayout>
<android.support.v4.widget.DrawerLayout
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
tools:openDrawer="start">
<include layout="@layout/content_main" />
<android.support.design.widget.NavigationView
android:id="@+id/nav_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
app:menu="@menu/activity_main_drawer" />
</android.support.v4.widget.DrawerLayout>
</android.support.design.widget.CoordinatorLayout>
我在顶层布局上使用 android:fitsSystemWindow="true"
这样我就可以为状态栏着色。但是当我这样做时,抽屉导航确实有一个灰色的顶部边框。
当我按照 Google 指定的方式(在工具栏上方)使用它时,边框会很好,但这样看起来很难看。有什么方法可以删除它吗?
我尝试覆盖 NavigationView.onInsetsChanged(Rect rect)
并能够将项目放在顶部,但灰色边框仍然存在。
最佳答案
我也很头疼想弄清楚这个问题并设法找到了this它描述了 CoordinatorLayout
如何将 fitsSystemWindows
传递给它的 child 。我肯定认为这是一个错误,因为 NavigationView
已经将它设置为 false
,但后来我读到:
NavigationView takes care of the scrim protection of the status bar for you, ensuring that your NavigationView interacts with the status bar appropriately on API21+ devices.
来自 Android Developers Blog .所以我不确定该怎么想。我认为这可能是因为 NavigationView
从未打算以这种方式使用。
尽管如此,您可以尝试使用以下解决方案来解决灰色条问题,但我还不确定它是否会导致更多问题。如果是这样,请回帖。
在activity_main.xml
中:
<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true">
<android.support.design.widget.NavigationView
android:id="@+id/nav_view"
android:layout_width="240dp"
android:layout_height="match_parent"
android:layout_marginTop="100dp"
android:fitsSystemWindows="false"/>
</android.support.design.widget.CoordinatorLayout>
在 MainActivity
类中:
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
if (navigationView != null && Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT_WATCH) {
navigationView.setOnApplyWindowInsetsListener(new View.OnApplyWindowInsetsListener() {
@Override
public WindowInsets onApplyWindowInsets(View v, WindowInsets insets) {
return insets;
}
});
}
}
}
应该给你这个:
关于android - 使用 fitsSystemWindows 时没有灰色边框的 NavigationView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36650074/
我想将灰度化的 iplimage 转换为 uiimage,反之亦然。我有如下两种方法在 RGB 色彩空间转换中成功,但对于灰色图像没有成功。 - (UIImage *)UIImageFromIplIm
我有一个服务器/客户端应用程序。服务器为每个客户端都有按钮。连接客户端后,按钮将变为启用状态,您可以单击该按钮。单击该按钮时,会出现一个新窗口,显示该特定客户端的信息,如 IP 地址、端口号等。 现在
在我的代理模型中,基础 QSortFilterProxyModel 在 flags 中虚方法: Qt::ItemFlags File_List_Proxy::flags(const QModelInd
我正在尝试重新创建此 UISearchBar(如表搜索示例代码中所示): alt text http://img168.imageshack.us/img168/6378/43558113.png 我
我正在尝试突出显示页面其余部分的 div/灰色。我的代码是: jQuery(document).ready(function ($) { $('.entry-content').mouseover(f
编辑2:如果我尝试将 JLabel 添加到复选框所在的区域(您在第二张图片中看到),我也会得到一个白色/灰色区域。 编辑:另请注意:当我刚刚创建 JLabel 并在将 TotalResultArea
我使用的是 Xcode 5.1.1,部署到 SDK 7.1。出于某种原因,当我添加一个选项卡栏 Controller 时,底部的项目没有显示,所有底部栏都是灰色的,关联的 View Controlle
我在对话框中嵌入了一个无模式属性表。我没有为控件使用新的窗口类,但确实使属性表成为对话框中容器的子项。除了一件事,一切都很好。当用户点击属性表时,对话框的标题栏由蓝色(ACTIVE)变为灰色(INAC
我正在修改别人的代码。他们使用通过 BufferedImage 加载的 PNG。我需要加载一个 TGA,它只是一个 18 字节的 header 和 BGR 代码。我加载并运行了纹理,但我得到的是灰色框
有没有办法让 html 单选列表输入“变灰”?我知道我实际上可以改变颜色..但我想做到这一点,所以单选按钮列表也不能切换。我还希望它在此状态下“突出显示”或切换到特定的 radio 列表。 例如,对于
我有一个叠加层并在滚动条仍然可见时禁用滚动(变灰),我使用了: CSS html.noscroll { position: fixed; overflow-y: scroll;
我最近重命名了我的项目,并且出现了与 Xcode 试图用来访问我的文件的路径相关的各种错误。 这很可能是由于重命名项目的错误尝试,所以我收回了努力,决定只更改客户看到的应用程序的名称。无论如何,一个特
我已将项目的 minSdkVersion 设置为 19 并启用了 Instant Run 。我已经在运行 API 21 的设备上部署了该应用程序,但是“应用更改”按钮显示为灰色。当我将鼠标悬停在该按钮
我使用以下方法在我的 Cocoa 应用程序中加载自定义文件导入窗口: [NSApp runModalForWindow:window]; 窗口显示得很好,并且是模态的。 但是,应用程序主菜单仍然处于事
我似乎无法向模拟器添加任何模拟位置,因为相应的菜单已完全变灰,如图所示: 使用实际设备进行调试时,该位置效果很好。 任何想法? 最佳答案 必须先运行iOS模拟器,然后才能启用该菜单。对我来说,它在成功
每当自动布局约束从尺寸检查器中“删除”时,它实际上并没有被删除,而只是“卸载”。在这一点之后,它仍然存在,只是褪色/变灰,在左侧的场景层次结构中可见,当在尺寸检查器的约束下选择“全部”时。 场景层次:
我正在尝试拍摄照片,然后允许用户添加一些效果、绘图、将其他 Assets 拖到图像、添加文本等。就像 snapchat 相机。 我已经关注了 Camera 2 API sample .代码的主要部分位
我正在使用 Google map 在我的网站上显示很多兴趣点,但它实际上不起作用。最奇怪的是,在实践中,它之所以有效,是因为标记和集群工作正常,连接的 Action 也在工作,但 map 没有显示,
我在使用 Fotorama 4 时遇到了一些显示问题,我不知道如何解决它。 当我在 codepen.io 中预览代码时,它看起来不错,但是当我将它放入我正在为客户工作的 wix 网站时,一些缩略图只是
我不知道如何使 Tkinter Checkbutton 变灰。 我尝试使用 state=DISABLED 但它不起作用,我收到一条错误提示 _tkinter.TclError: bad option
我是一名优秀的程序员,十分优秀!