Articles of 导航抽屉

更新片段以响应Android Navigation Drawer交互

我正在使用的Android应用程序有一个MainActivity,应用程序的每个屏幕都是作为一个片段来实现的。 每个片段都在MainActivity中像这样被实例化为私有类variables: public class MainActivity extends Activity implements MainStateListener { private FragmentManager fm = getFragmentManager(); private BrowseFragment browseFragment = BrowseFragment.newInstance(); … 有一个单独的“片段框架”加载每个屏幕片段。 在应用程序中切换屏幕时,将调用此代码以加载片段: FragmentTransaction ft = fm.beginTransaction(); ft.replace(R.id.frag_frame, incoming); ft.addToBackStack(null); ft.commit(); fm.executePendingTransactions(); 每个屏幕片段都有一个侦听器,使片段可以调用MainActivity中的各种方法: public void onAttach(Activity activity) { super.onAttach(activity); try { mainStateListener = (MainStateListener) activity; } catch (ClassCastException e) { throw new ClassCastException(activity.toString() + " […]

如何清除视图中所有可选元素的焦点?

我的问题很简单。 如何清除可能具有焦点的视图中的所有元素的焦点 ( 如 EditText – 或 – TextView的textIsSelectable="true"并在发生clearFocus事件时在其中select文本)。 为什么要问(如果我没有得到上面的通用答复): 我有几个通过导航视图访问的片段 。 我的主要目标是失去导航视图中打开的抽屉中的片段中的元素的焦点 。 我知道它可能得到onDrawerSlide的NavigationDrawer方法,并有infact设置它在我的MainActivity,以便在抽屉打开,如果我的EditText在其中一个碎片打开,我调用hideSoftKeyboard代码,以便它closuresSoftKeyboard。 我的代码在抽屉打开时获取事件 :(在MainActivity的onCreate()方法中) DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout); ActionBarDrawerToggle toggle = new ActionBarDrawerToggle( this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close) { //Hide SoftKeyboard on Navigation Drawer Open @Override public void onDrawerSlide(View drawerView, float slideOffset) { //Hide SoftKeyboard if it is open hideSoftKeyboard(); //And […]

如何在Android中的导航菜单中创build一个子水平?

我想达到这样的效果: http://mmenu.frebsite.nl/ 当你点击文档/教程/支持时,菜单将进入子菜单。 它不是可扩展的列表视图,也不是父菜单标题下面的子菜单项。 我曾尝试使用导航视图创build菜单,如下所示: <?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android"> <group android:checkableBehavior="single"> <item android:id="@+id/nav_home" android:icon="@drawable/ic_event" android:title="Home" /> <item android:id="@+id/nav_profile" android:icon="@drawable/ic_dashboard" android:title="Perfil" /> </group> <item android:title="More Options"> <menu> <item android:icon="@drawable/ic_forum" android:title="Forum" /> <item android:icon="@drawable/ic_headset" android:title="Headset" /> </menu> </item> </menu> 问题是,当我点击父菜单标题时,它不能进入​​子菜单。 如何在Android中实现? 非常感谢

具有活动的NavigationDrawer与带碎片的NavigationDrawer

以我目前正在使用的应用为例: – 它有一个包含多个项目的navigationDrawer; 有两个东西我现在感兴趣,我会叫他们X和Y. 当点击X和Y时,显示一个包含x元素或y元素列表的片段 selectx或y列表元素将显示一个新的片段,其中显示有关select项目的信息; 视图片段对于x和y元素是不同的 在视图片段中,我可以select编辑带有编辑片段的特定元素 片段方法正在工作,但是我花了一段时间来pipe理片段之间的导航。 另外,我可能不得不在抽屉里添加一些类似于X和Y的新项目。我的抽屉和我做碎片切换的主要活动已经很密集了,这让我想到了:应该我从碎片切换到活动? 我正在考虑select抽屉项目时开始一个新的活动,并处理与该活动中选定项目相关的列表/视图/编辑片段,而不是处理单个活动中所有项目的所有片段。 这是个好主意吗? 这是不好的devise?

导航抽屉图标箭头而不是三行

我用导航抽屉在eclipse中创build了一个新的项目,而不是屏幕左上angular的三行图标,我有后退箭头图标。 我没有发现堆栈上的stream量似乎有帮助。 我试图改变setDisplayHomeAsUpEnabled和setHomeButtonEnabled但它没有帮助这里是代码的一部分(通过它从Eclipse的默认代码的方式)任何人有想法?

导航抽屉xml错误

亲爱的stackoverflowers, 我在我的活动中使用导航抽屉,这里是xml: <android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/drawer_layout" android:layout_width="match_parent" android:layout_height="match_parent" > <FrameLayout android:id="@+id/content_frame" android:layout_width="match_parent" android:layout_height="match_parent" /> <FrameLayout android:layout_width="240dp" android:layout_height="match_parent" android:layout_gravity="start" android:background="#3a3a3c" > <ImageView android:id="@+id/ImageView01" android:layout_width="240dp" android:layout_height="10dp" android:layout_marginTop="20dp" android:src="@drawable/border" /> <TextView android:id="@+id/tvretailers" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="0dp" android:text="Retailers" android:textColor="#ffffff" android:textSize="20sp" /> <ImageView android:id="@+id/imageView1" android:layout_width="240dp" android:layout_height="10dp" android:layout_marginTop="300dp" android:src="@drawable/border" /> <ListView android:id="@+id/right_drawer_settings" android:layout_width="wrap_content" android:layout_height="250dp" android:layout_marginTop="310dp" android:background="#3a3a3c" > </ListView> <TextView android:id="@+id/TextView01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="280dp" […]

导航栏下面的Actionbar

现在我刚刚在Android Studio中启动了一个项目,并在模板中预先configuration了NavigationBar。 显然它把导航抽屉放在操作栏后面。 你发现很多问题想要在操作栏顶部的导航抽屉,我想要在操作栏下面开始。 这是我现在有: 最终期望的情况: 我find了这个解决scheme,但我认为应该有一个更简单的方法。

在导航抽屉中按多个片段的活动中的“后退”button时退出应用程序

我正在研究需要导航抽屉的应用程序。 这个应用程序有1个MainActivity和约10个片段。 当我单击MainActivity中的导航抽屉图标时,它将显示10个片段,以便我可以select它们中的每一个。 我select片段A,然后是B,然后selectC …到F,例如。 当我在片段F,并按下后退button,它会带我回到片段E,然后再回来,它会带我到片段D … 我的问题是,当我回到片段A(当然是来自片段B),再按一下Backbutton,它会带我到一个空白的白色屏幕(我认为这是主要的活动布局)。 然后再按一下,应用程序将退出。 我想要的是当我回到片段A(最后一个片段),并点击返回,应用程序将立即退出,而不是空白的白色屏幕了 我已经search过,发现了1个类似的问题,但没有答案,所以我不得不提出另一个问题 我怎样才能做到这一点? 非常感谢你

无法parsing方法getActivity()

我是Android的新手,并学习如何在Android中创build片段 例如: 片段导航抽屉 菜单项和添加导航标题 之间的代码包含一个方法getActivity() 。 由于作者没有提到粘贴这个代码的位置,我粘贴了我的MainActivity.java文件 导航菜单项和添加导航标题 之间的代码是由我粘贴在正确的位置? 在方法selectDrawerItem(MenuItem menuItem)有一个注释// Create a new fragment and specify the planet to show based on position 作者是否期望我在这里添加一些东西。 我在AndroidStudio上创build的项目文件布局如下: AndroidStudio快照

如何使用Fragments在NavigationDrawer上隐藏OptionsMenu?

我正在创buildAndroid应用程序,并且尽可能地尊重最新的Android可用性标准。 特别是,我正在准备使用导航抽屉的用户界面,我试图确保与2.1以上的Android版本的兼容性。 为了解这个问题,该项目包括: 主要活动 导航抽屉; 四个片段(与他们相关的布局)。 当我打开导航抽屉时,出现了我遇到的问题:虽然每个Fragment都有其特定的菜单,但是当我打开导航抽屉时,它将被添加到导航抽屉菜单中。 我尝试了几种方法( invalidateOptionMenu() , menu.clear() ,操作函数isDrawerOpen()和isDrawerClose()等等),但是当我打开navigationdrawer的时候无法删除Fragment的菜单。 这些是我的代码片段,大部分是由Android Studio,我使用的IDE生成的: 主要活动: @Override public boolean onCreateOptionsMenu(Menu menu) { if (!mNavigationDrawerFragment.isDrawerOpen()) { // Only show items in the action bar relevant to this screen // if the drawer is not showing. Otherwise, let the drawer // decide what to show in the action […]