Articles of drawerlayout

同一活动中的导航抽屉和视图寻呼机

我试图在同一活动中实现导航抽屉和视图寻呼机。 导航抽屉工作正常,但视图寻呼机不工作,我也在导航抽屉打开时右侧滑动指针(空指针在android。支持.v4。小部件.GrawerLayout.isContentView(DrawerLayout.java:840)。我我附加了主要的xml布局和代码。 活动类如下 public class MainActivity extends Activity { private DrawerLayout mDrawerLayout; private ListView mDrawerList; private ActionBarDrawerToggle mDrawerToggle; private CharSequence mDrawerTitle; private CharSequence mTitle; private String[] mPlanetTitles; private MainActivity mContext; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mContext = this; ViewPager vp = (ViewPager) findViewById(R.id.viewpager); CustomPagerAdapter adapter = new CustomPagerAdapter(mContext); vp.setAdapter(adapter); vp.setPageTransformer(false, new ViewPager.PageTransformer() […]

如何在设备屏幕的右侧设置抽屉布局图标?

我已经创建了抽屉布局示例应用程序,它工作正常,我的问题是抽屉布局从右到左完美工作但我试图将图标左侧移动到右侧但它不起作用给我你的建议.. !!! 这有可能吗?

如何使用DrawerLayout打开活动时删除延迟?

我有一个带有DrawerLayout的活动但是无论什么时候它打开都有一个延迟,就像分秒,屏幕是白色的,然后画出我的屏幕。 转换结束后会发生这种情况。 所以它看起来像屏幕animation过渡是跳跃。 在用ButterKnife绑定视图后,我尝试将它放在我的OnCreate上,但它没有做任何事情。 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { postponeEnterTransition(); drawerLayout.getViewTreeObserver().addOnPreDrawListener(new ViewTreeObserver.OnPreDrawListener() { @TargetApi(Build.VERSION_CODES.LOLLIPOP) public boolean onPreDraw() { drawerLayout.getViewTreeObserver().removeOnPreDrawListener(this); startPostponedEnterTransition(); return true; } }); } 是的我正在为Lollipop优化它,对于pre-Lollipop设备我使用overridePendingTransitions ,它运行正常。 我的问题只在Lollipop设备上。 顺便说一句,我的Enter和Exit转换都是在xml中定义的fade_in_out并在styles指定 @color/pink false true true true true @transition/fade_in_out_transition @transition/fade_in_out_transition @transition/change_clip_bounds @transition/change_clip_bounds stateAlwaysHidden|adjustResize

Android DrawerLayout没有显示正确的指示器图标

我正在尝试使用新的DrawerLayout作为列表。 问题是虽然我设置了抽屉监听器,但操作栏上的指示器仍然是箭头图标而不是我打算绘制的3行图标。 以下是OnCreate函数: public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_front_page); // Swiping Pager set up mSectionsPagerAdapter = new SectionsPagerAdapter(getSupportFragmentManager()); mViewPager = (ViewPager) findViewById(R.id.pager); mViewPager.setAdapter(mSectionsPagerAdapter); // Sliding Drawer set up mHabitContract = new HabitsContract(this); mDrawerLayout = (DrawerLayout) findViewById(R.id.front_page_layout); mDrawerList = (ListView) findViewById(R.id.habit_list); mDrawerLayout.setDrawerShadow(R.drawable.drawer_shadow, GravityCompat.START); mDrawerList.setAdapter(new HabitAdapter(mHabitContract.GetHabitItems(), this)); // Fixme: Indicator image doesn’t show up mDrawerToggle = […]

Android,什么是不使用支持库时等效的DrawerLayout类?

由于我的最低SDK版本是14,我不想在我的应用程序中添加支持库。 根据Android在DrawerLayout页面上DrawerLayout ,此视图组在支持库( android.support.v4.widget )中定义。 如果我不添加支持库,是否有任何等效的DrawerLayout类? 谢谢。

如何在DrawerLayout的NavigationView中设置未读通知计数?

我使用Android设计支持库在DrawerLayout中创建了一个NavigationView my_navigation_items.xml 现在,我想为NavigationView每个项目设置未读通知计数器,如下图所示: 如何在NavigationView项目上设置未读通知计数器?

你需要传递给v4.widget.DrawerLayout.isDrawerOpen()/。openDrawer()/。closeDrawer()

我一直试图将我的代码移到DrawerLayout正如android所建议的那样, SlidingDrawer不推荐使用SlidingDrawer 。 我的问题是到目前为止, DrawerLayout似乎要么执行得非常糟糕,有无用的错误信息(没有防御性编程)和/或文档中解释得不够好。 这里描述了isDrawerOpen()方法: public boolean isDrawerOpen(查看抽屉) 检查给定的抽屉视图当前是否处于打开状态。 为了被视为“开放”,抽屉必须已经稳定在其完全可见的状态。 要检查部分可见性,请使用isDrawerVisible(android.view.View)。 参数:drawer – 要检查的抽屉视图 返回:如果给定的抽屉视图处于打开状态,则返回true 每个方法isDrawerOpen(View drawer) , openDrawer(View drawer)和closeDrawer(View drawer)在传递时不起作用:有问题的DrawerLayout或它的任何一个子DrawerLayout 。 我不知道我应该为这些方法提供什么来让它们发挥作用。 有人能告诉我吗? 有关实现,请参阅下面的整个问题描述。 我有这样的布局: 在我的代码中,我将以下方法连接到一个按钮: protected void onCreate(Bundle savedInstanceState) { … mMenuPanel = (DrawerLayout) findViewById(R.id.mainmenuPanel); …. } public boolean isDrawerOpen() { if(mMenuPanel != null) { return mMenuPanel.isDrawerOpen(mMenuPanel); } return false; } 但是,如果您将其自身作为参数(在极端情况下将是多余的),则会出现以下错误: […]

如何将项目添加到NavigationView中的菜单组

在Android的文字游戏中,我目前有一个从left_drawer_menu.xml膨胀的硬编码菜单,包括3组(轮到我,对手回合,最后是其他东西): mLeftDrawer = (NavigationView) findViewById(R.id.left_drawer); mLeftDrawer.setNavigationItemSelectedListener( new NavigationView.OnNavigationItemSelectedListener() { @Override public boolean onNavigationItemSelected(final MenuItem menuItem) { Menu menu = mLeftDrawer.getMenu(); if (menuItem.getGroupId() == R.id.my_move) { menu.setGroupCheckable(R.id.my_move, true, true); menu.setGroupCheckable(R.id.his_move, false, false); menu.setGroupCheckable(R.id.extras, false, false); } else if (menuItem.getGroupId() == R.id.his_move) { menu.setGroupCheckable(R.id.my_move, false, false); menu.setGroupCheckable(R.id.his_move, true, true); menu.setGroupCheckable(R.id.extras, false, false); } else if (menuItem.getGroupId() == […]

Android工具栏+标签布局+抽屉,滚动时隐藏工具栏并将TabLayout置于顶部

我有活动,附有抽屉。 抽屉的每个菜单都是一个片段,在其中一个菜单下我有一个带有TabLayout的片段,每个标签都包含一个RecyclerView 。 所以现在,当我滚动RecyclerView ,标签布局会被隐藏,但ToolBar仍然位于顶部。 我需要的是ToolBar隐藏( scrollFlags:scroll|enterAlways ), TabLayout应显示在顶部。 所以目前的设置是: Activity with attached DrawerLayout -> Fragment with TabLayout -> Tab Fragment 1 with RecyclerView -> Tab Fragment 2 with RecyclerView

如何使用可见句柄实现DrawerLayout

我已经为我的应用程序成功实现了NavigationDrawer。 我的应用程序显示在屏幕左侧打开的抽屉。 我的问题是我需要在左边添加一个按钮。 可以单击或滑动该按钮以打开左侧抽屉。 我能做到的。 但按钮应该看起来像抽屉的一部分会溢出到屏幕上。 这意味着当抽屉打开和关闭时,按钮应同时滑动。 关闭状态: 开放状态 我尝试将按钮添加到左侧抽屉的布局中,但似乎您无法使其显示在其边界之外,并且当您关闭它时,抽屉将始终完全隐藏。 现在我正在尝试添加它来为主DrawerLayout添加一个按钮并使其对齐到左抽屉的右侧……但是没有运气……看起来像DrawerLayout不能有两个以上的孩子.. 。 任何帮助将不胜感激。 我正在使用支持库(v4) [编辑]我支持API级别8 …所以无法使用ImageView.setTranslationX或View.OnAttachStateChangeListener