问题标签 [android-drawer]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - CardView 和其他元素没有显示在我的 xml 文件中
我正在使用AppCompatActivity
and 目前,我正在尝试将导航抽屉添加到工具栏。
问题是,现在卡片视图没有显示,导航抽屉也没有工作。
这是我的代码:
如果有人能解决我的错误,那真的很重要,让我开心。我不知道我哪里出错了,我只想在工具栏中有导航抽屉按钮和屏幕上的cardview
android - 片段中的自定义列表不起作用
所以我是 Android 编程的新手,我正在尝试制作一个自定义 ListView。我遵循 YouTube 上的教程(https://www.youtube.com/watch?v=gAIB4fTm2BA),但我无法让它在片段上工作。
驱动适配器:
XML
android - Android 抽屉布局可能产生空指针异常
我在我的代码中不断收到这个警告,我开始担心,因为我接近完成的最后期限。我的主要活动中有一个 DrawerLayout,使用 Android Studio 自己的导航抽屉活动,但由于 DrawerLayout setDrawerListener 现在已弃用,因此必须对代码进行轻微更改。
我收到警告drawer.addDrawerListener(toggle)
并且navigationView.setNavigationItemSelectedListener(this)
在我的代码中,我也通过这种方法接收它:
提前感谢任何可能知道是什么原因的人。我已经搜索了这个问题,但我找不到关于 post deprecated 方法的示例。
android - API16 设备上的 fitSystemWindows 不起作用
我的活动请求布局为全屏:
并在 xml 布局中将fitSystemWindows属性设置为填充状态栏高度:
编译后appcompat-v7:23.2.1
,它在 API21 设备上运行良好,但在 API16 设备上没有应用填充。有什么提示吗?
更新
赏金:为什么在 API16 设备上不应用填充?
android - 在 DrawerLayout 菜单打开时更改主屏幕的透明度
我在应用程序的主屏幕上使用抽屉布局来提供一些菜单选项。当抽屉打开时,我想为后台活动添加一些渐变或一些不可见性。我怎样才能做到这一点?我使用了以下两种方法,但它不起作用,可见性 od 主屏幕保持不变
和
从 NavigationDrawer 后面的两种方法屏幕都清晰可见,我想对其进行模糊处理,使其可见但不清晰
android - 更改所选导航抽屉图标的颜色
我使用 Android Studio 模板创建了一个带有 NavigationDrawer 的应用程序,但想更改为深色主题。这很好用,但是我在更改图标颜色和抽屉的选定图标时遇到了问题。
这与在 Android Studio 默认模板中更改导航抽屉图标的颜色非常相似,但我还想更改所选图标的颜色。
app:itemIconTint="@color/colorAccent"
至少在深色背景上的图标不是深蓝色的情况下起作用。
有没有办法根据菜单项的当前状态(选择/未选择)设置不同的颜色?
使用 selector-drawable 在对 XML 进行压缩时导致异常(“Binary XML file line #3: tag requires a 'android:color' attribute.”)。
编辑:在这里解决: 更改导航抽屉中选中菜单项的颜色
我已经尝试了很多类似或相同问题的SO答案,但没有成功。
我挣扎的一点是我使用了@drawable 而不是@color。不知道@color 资源也可以有多个状态。
android - 单击导航图标不起作用
我有一个简单的android.support.v7.widget.Toolbar,我要做的就是通过按左上角的“汉堡包”图标打开NavigationDrawer。“汉堡包”按钮是可见的,当我开始从左侧拉动时,我看到了按钮上的动画,但按下按钮并没有像我预期的那样打开/关闭 NavigationDrawer。代码如下: -
MainActivity.java
xml文件如下:-
activity_main.xml
android - NavigationView:按下项目的背景颜色在 Jellybean 上随机交替
我的应用程序有两个活动,一个DrawerLayout
和一个NavigationView
(android.support.design.widget.NavigationView)。
我使用带有 parent 的应用程序主题Theme.AppCompat.Light.DarkActionBar
,对于我的 Lollipop 模拟器,没有问题。
但是对于我的 Jellybean 设备和模拟器,我有一个非常奇怪的行为:
项目的背景NavigationView
有时呈现为浅灰色(这对我来说没问题),有时呈现为浅蓝色阴影(我认为这是 Theme Holo 的默认设置)。
对于我的“真实”应用程序,灰色总是出现在第一个抽屉上,而蓝色总是出现在另一个抽屉上。起初我认为差异可能是由于一些细节,比如第一个使用 anActionBarDrawerToggle
而另一个没有,所以也许我不得不以某种方式android:listSelector
只为第二个设置。
所以我创建了一个类似 MCVE 的示例,并注意到两个抽屉不时显示两种颜色。这是一个错误还是我错过了什么?
我该怎么做才能摆脱 Theme Holo?
截图:
顺便说一句,我对ActionButton
背景有相同的随机行为:
我的代码(大约 95% 的代码适用于那些喜欢运行自己的测试的人):
activity_main.xml只是一个“空白活动”,中间有一个大的“Hello World”:
activity_main_decor.xml
activity_other.xml
activity_other_decor.xml
MainActivity - 导航抽屉必须从左侧和上方出现ActionBar
(顺便感谢@Peter Cai 提供了一些非常有用的行)
OtherActivity - 抽屉就像一个上下文菜单,从右侧出现而不重叠ActionBar
:
menu_main.xml不必要
menu_other.xml包含一个用于打开/关闭抽屉的操作按钮:
样式.xml
更新(2016 年 5 月)
同时,我也尝试为这些NavigationView
项目设置自己的背景。背景发生了变化,但在触摸时,我仍然会得到 Lollipop 和更高版本的涟漪(没关系),不幸的是,Jellybean 上的交替效果仍然存在,可能来自某种我不知道如何操作的列表选择器。
更新 2(2016 年 9 月)
我安装了新版本的 Android Studio,正在使用最新版本的构建工具和所有库(分别为 24.0.2 和 24.2.0),甚至放弃ActionBar
了Toolbar
. 最后一点意味着我不必在 Main 中使用 hack 来让导航抽屉覆盖 . ActionBar
,因此我不再在代码中使用 LayoutInflater。
但仍然没有运气:(
我很确定这是一个错误:相同的代码从一个应用程序运行到下一个应用程序的行为不同,并且在同一次运行期间活动 Main和Other 之间的不一致。
android - StackOverflowError,我不知道为什么
我在 Android 4.0.3 上的特定用户只报告了一次以下崩溃。我在堆栈区域中没有看到对我的代码的引用,我想知道是否有人对可能导致此问题的原因有任何想法?
显然,不是最高优先级,因为它只被报告过一次,但我仍然想了解。我无法在 4.0.2 上重现(我无法运行 4.0.3 模拟器)。
谢谢,
堆栈跟踪:
这是我的主要活动的 XML(用户 a 的 XML DrawerLayout
)。Lint 没有报告任何重大问题,我在这里没有看到明显的问题。
android - How to use Android NavigationDrawer to create other fragments?
It's my first Android project. I need to create a sliding menu to start different pages. Then I find in Android Studio 1.4 there is a default "Navigation Drawer"Activity for us to use.Here is the default image
So i want to click different items to start different fragments(i think it's fragments not activities). How can I add the code to start?
` I think I should add code here
Here is all the mainactivity:
}'
Here is main layout: