打开导航抽屉时使片段可点击

2024-03-09

我的问题如下:我锁定了导航抽屉菜单setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_OPEN)在平板电脑的横向模式下,但我需要右侧的片段处于活动状态,这样我就可以在导航始终打开的情况下单击它。但我不知道该怎么做。请帮忙。


您需要做以下几件事:

  1. 通过设置透明颜色来禁用布局褪色:

    drawer.setScrimColor(Color.TRANSPARENT);
    
  2. 锁好抽屉

    drawer.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_OPEN);
    
  3. 创建一个自定义抽屉类,允许在锁定模式下点击:

    public class CustomDrawer extends DrawerLayout {
    
        public CustomDrawer(Context context) {
            super(context);
        }
    
        public CustomDrawer(Context context, AttributeSet attrs) {
            super(context, attrs);
        }
    
        public CustomDrawer(Context context, AttributeSet attrs, int defStyle) {
            super(context, attrs, defStyle);
        }
    
        @Override
        public boolean onInterceptTouchEvent(MotionEvent ev) {
            View drawer = getChildAt(1);
    
            if (getDrawerLockMode(drawer) == LOCK_MODE_LOCKED_OPEN && ev.getRawX() > drawer.getWidth()) {
                return false;
            } else {
                return super.onInterceptTouchEvent(ev);
            }
        }
    
    }
    
  4. 在 xml 中使用此类:

    <com.example.myapplication.CustomDrawer
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent">
    
        <FrameLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent">
            <!-- The main content view -->
        </FrameLayout>
        <ListView android:layout_width="100dp"
                  android:layout_height="match_parent"
                  android:layout_gravity="start"
                  android:background="#111"/>
    </com.example.myapplication.CustomDrawer>
    
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

打开导航抽屉时使片段可点击 的相关文章

  • 生产中偶尔会发生 android.webkit.WebView 类膨胀错误

    我的应用程序在 Google Play 上 它在大多数设备 数千个用户 上运行良好 但在极少数情况下 占每日活跃用户百分比的一小部分 我得到Error inflating class android webkit WebView当我为我的片
  • Android STFP 库 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我想在我的 Android 项目中使用 SFTP 安卓已经有了吗 SFTP 库 还是我必须实现它 I
  • IntentService、Service 或 AsyncTask

    实现这一点的最佳方法是什么 我有一个 Android 应用程序 它将使用我的 python 服务器来允许两部手机之间进行轮流通信 回合意味着他们在一轮开始之前不能互相交谈 一旦他们发送一条消息 他们就不能发送另一条消息 直到对方做出回应 然
  • 在Android内存中存储gif图像

    我对安卓还很陌生 我想将图像保存到内存中 然后从内存中检索图像并将其加载到图像视图中 我已使用以下代码成功将图像存储在内存中 void saveImage String fileName img cnt jpg File file new
  • Android Studio:Android 设备监视器未显示我的设备

    我的真实设备是索尼 Xperia c6502安卓版本4 3 我确定我将其连接到我的计算机然后打开开发者选项 USB调试 on 在 SDK 管理器中 Google USB 驱动程序已安装 I downloaded Xperia Z Drive
  • Android 导航回到 Activity;不要重新加载父级

    我有一个场景 我单击 ListFragment 并启动一个新的 Activity 如下所示 public void onListItemClick ListView l View v int position long id super o
  • 将 firebase auth 与 google app engine 云端点集成

    有人可以指定 使用一些示例代码 如何验证谷歌云端点中的 firebase 令牌吗 最近提出的问题根本没有澄清 如何将 Firebase 身份验证与 Google 应用引擎端点集成 https stackoverflow com questi
  • Android 中带有透明背景的 ImageButton [重复]

    这个问题在这里已经有答案了 我已经按照这篇文章在android中制作ImageButton 安卓图像按钮 https stackoverflow com questions 2283444 android image button 图像出现
  • twitter4j => AndroidRuntime(446): java.lang.NoClassDefFoundError: twitter4j.http.AccessToken

    我正在尝试使用 twitter4j 我的应用程序来连接并发布到 Twitter 我正在关注本教程 http blog doityourselfandroid com 2011 02 13 guide to integrating twitt
  • popupBackground 与 Material Design 相关的问题

    我一直致力于将我的应用程序更新为 Material Design 我有一个使用选项卡的应用程序 由于某种原因 每当我使用 android popupBackground 设置下拉菜单颜色时 它就会崩溃 我设置了一个带有选项卡的默认项目并使用
  • 如何从webkit浏览器中检测Android版本和品牌?

    如何通过webkit浏览器检测Android版本和品牌 可靠吗 我相信你可以检查用户代理 但是 我认为它不安全 因为有很多方法可以用来欺骗用户代理 在谷歌上搜索这个问题给了我们很多答案 它甚至可以在默认浏览器上运行 您只需输入 about
  • 在尝试使用 GPS 之前如何检查 GPS 是否已启用

    我有以下代码 但效果不好 因为有时 GPS 需要很长时间 我该如何执行以下操作 检查GPS是否启用 如果启用了 GPS 请使用 GPS 否则请使用网络提供商 如果 GPS 时间超过 30 秒 请使用网络 我可以使用时间或 Thread sl
  • 使用 cordova cli 构建时的 Android 安装位置

    我正在使用 cordova CLI 工具构建一个大型 cordova phonegap 应用程序 我需要 AndroidManifest xml 文件中的 installLocation 具有 installLocation auto 或p
  • 与 Dagger 一起使用时,Espresso 生成 FileNotFoundException

    我一直在研究旧版 Android 应用程序 尝试为其添加测试和适当的架构 该应用程序有一个主要LaunchActivity它在启动时运行一系列检查 最初 该活动使用 Dagger 来 注入依赖项 活动将使用它来运行检查 但效果相当糟糕 我转
  • 确定视图是否在屏幕上 - Android

    我对这个有点困惑 首先也是最重要的是 以下链接很有用 但是我提出了一些可见性问题 链接 检查视图可见性 https stackoverflow com questions 4628800 android how to check if a
  • BadPaddingException:无效的密文

    我需要一些帮助 因为这是我第一次编写加密代码 加密代码似乎工作正常 但解密会引发错误 我得到的错误是 de flexiprovider api exceptions BadPaddingException 无效的密文 in the 解密函数
  • 如何以编程方式创建 CardView

    我正在开发一个 Android 应用程序Java Android Studio 我想在活动中创建CardView以编程方式 我想将以下属性设置为CardView layout width wrap content layout row 0
  • Android:如何在布局中放置纯色矩形?

    我有一个可以很好地膨胀的relativelayout 我想在顶部添加一个跨越布局宽度的纯色矩形 我尝试将以下内容放入我的 xml 中
  • compileReleaseKotlin 失败并出现 java.lang.ClassNotFoundException:com.sun.tools.javac.util.Context

    我正在尝试使用 gradlew 通过终端构建我的 Android 项目 其中包含库模块 在 Android Studio 中 它编译并安装成功 但是当我尝试运行时 gradlew assembleDebug我得到以下堆栈跟踪 Using k
  • firebase中按范围查询

    我有一个食品价格范围滑块 根据滑块的最小值和最大值 我想显示此范围内的食品 滑块代码 multiSlider setOnThumbValueChangeListener new MultiSlider SimpleChangeListene

随机推荐

  • 为什么编译器这么蠢?

    我总是想知道为什么编译器无法弄清楚人眼显而易见的简单事物 他们做了很多简单的优化 但从来没有做过哪怕一点点复杂的优化 例如 此代码在我的计算机上大约需要 6 秒才能打印值零 使用 java 1 6 int x 0 for int i 0 i
  • mysql中如何将varbinary转换为char/varchar

    我有一个 varbinary 字段 它已经被填充了 现在我如何将 varbinary 转换为 varchar 以便我可以将字段中的数据用于其他目的 我使用MySQL版本5 10 迟到的答复 您可以使用 CAST 或 CONVERT 因此 C
  • 如何创建一个字母滚动条显示android中的所有字母?

    My purpose is to obtain something like that 但我能找到的唯一例子是这样的列表 android 列表视图快速滚动与字母表就像 iPhone 联系人活动 https stackoverflow com
  • 如何在绝对定位的父div内部垂直居中div

    我试图将蓝色容器放在粉色容器中间 但是似乎vertical align middle 在这种情况下不起作用 div style display block div style text align left height 56px back
  • 如何删除 ggplot geom_bar 图中的选择标签并将这些标签居中?

    是否可以从 geom bar ggplot geom text 中删除重复值的某些 特定标签并将该值集中在图 条上 My data structure list prey name c Amphipod Byths Chiro Adult
  • LNK2022:元数据操作失败:重复类型中的字段声明不一致

    我在编译 C NET 项目时遇到问题 我读过了 LNK2022 元数据操作失败 让我发疯 https stackoverflow com questions 810827 lnk2022 metadata operation failed
  • 在集合页面 Shopify 中显示变体选项

    我知道这个问题在互联网上被问了数百万次 但似乎每个人都希望有一个有自己特色的解决方案 我找不到我真正需要的东西 因此 我使用此代码来显示我的收藏中的变体 然后添加到购物车
  • 如何以编程方式获取 Windows 进程的线程计数?

    我想通过 C C 计算当前 Windows 进程的本机线程数 我看到有一个相关问题 https stackoverflow com questions 2744295 how to find the active thread count带
  • 在张量流中调整 3D 数据的大小,如 tf.image.resize_images

    我需要调整一些 3D 数据的大小 例如tf image resize images二维数据的方法 我想我可以尝试跑步tf image resize images在它上循环并交换轴 但我认为一定有一种更简单的方法 简单的最近邻应该没问题 有任
  • 有没有办法不将人们重定向到 Mailchimp 的“谢谢”页面?

    我在 Mailchimp 网站上看到 当用户订阅您的邮件列表时 您可以将用户重定向到自定义感谢页面 但这并不是我想要做的 当用户订阅我的邮件列表时 我想隐藏表单并直接在我的页面上将其替换为感谢信 而不进行任何重定向 有没有办法做到这一点 您
  • Notepad++ 的整洁 CSS

    是否有某种 CSS 整洁可用于 Notepad 我已经尝试了 TEXTFX 中似乎每个菜单项 但似乎没有一个能做到这一点 我习惯使用 PSPAD 只需选择 CSS 并单击 重新格式化为结构化 CSS EDIT在问这个问题很长时间后发现了一个
  • 如何在NextJs中为Material UI的媒体查询实现SSR?

    我无法遵循文档 https material ui com components use media query server side rendering实现 Material UI 的媒体查询 因为它是为普通的 React 应用程序指定
  • 使用 PowerShell 重命名 FTP 上的文件

    有没有办法重命名 FTP 目录中的文件 我正在将实时图像从计算机流式传输到 FTP 但问题是当它将图像上传到 FTP 时 它会立即替换文件 我想先上传临时名称的图像 然后重命名为 live jpg 这就像缓存文件上传一样 while tru
  • ASP.NET MVC 中的 jQuery 与 MicrosoftAjax

    在什么情况下您会在 ASP NET MVC 应用程序中使用 MicrosoftAjax 而不是 jQuery 根据斯科特 凯特在此播客中的说法Scott Cate 的面向对象 AJAX http www hanselminutes com
  • 实现 jquery UI 自动完成以在您键入“@”时显示建议

    我正在使用 jquery UI AutoComplete 来允许用户使用 mentions 来标记朋友 默认情况下 当您将焦点放在文本框上时 就会出现自动完成建议 如何让建议仅在您输入 时出现 这是我到目前为止的代码 var availab
  • 为什么无法访问的代码在 C++ 中不是错误?

    无法访问的代码是 Java 等语言中的编译时错误 但为什么它在 C 和 C 中只是警告呢 考虑以下示例 include
  • 如何在跨平台 xamarin XAML 上从资产目录加载图像?

    这似乎是一件非常容易做的事情 而且理论上它看起来非常简单 创建资产目录 添加图像集并将其命名为 imageName 不带 png 添加图像 done 或者至少这是我到处读到的内容 但我仍然无法让它发挥作用 我的 XAML 看起来像这样
  • Android Gradle:javaMaxHeapSize“4g”是什么?

    在一个安卓项目中 构建 gradle文件 我已经经历过这一行 dexOptions javaMaxHeapSize 4g 我想知道这样做的确切目的java最大堆大小那是什么4g方法 我还能提供哪些其他价值 正如它在上面回答 https st
  • 从 NHibernate 映射生成数据库模式

    是否可以从 Nhibernate 映射 DLL 生成数据库模式 我的要求是MySQL 如果是这样 我该怎么做 有这方面的工具 脚本吗 开源 免费软件工具 此外 我可以使用这些工具将数据集插入 更新到数据库吗 你有没有尝试过使用NHibern
  • 打开导航抽屉时使片段可点击

    我的问题如下 我锁定了导航抽屉菜单setDrawerLockMode DrawerLayout LOCK MODE LOCKED OPEN 在平板电脑的横向模式下 但我需要右侧的片段处于活动状态 这样我就可以在导航始终打开的情况下单击它 但