具有登录/注册/家庭流程的导航组件

时间:2019-02-06 06:10:58

标签: android kotlin

我想在下一个应用程序中使用新的导航组件,但是我无法完全围绕整个导航流程进行研究。 Android小组建议将一个活动作为切入点。他们还建议,诸如登录/注册之类的条件元素不应作为切入点。 但是,如果输入屏幕应该是主屏幕,那么如何显示登录和注册按钮?

另一种想法是使用启动屏幕,其中包含确定用户是否已经登录的逻辑,如果是,则转到主屏幕,如果未显示登录/注册屏幕,则为

我的另一个问题是单一活动。我的主屏幕必须是带有底部导航的屏幕。

您如何以“正确的方式”将所有这些联系在一起?我是否需要为“主页”视图创建单独的导航图,并具有“底部导航”和从此处流动的许多屏幕?

我发现的所有示例都非常简单明了,并且通过Splash屏幕分为Home和Login看到的几个示例都有一个非常简单的Home片段,在我的情况下为。底部导航更复杂。

谢谢。

2 个答案:

答案 0 :(得分:0)

简单示例=

单个活动,带有底部导航栏和Android导航组件的多片段。

计划:

  • 显示带有3000英里等计时器的启动屏幕。
  • milis末尾将用户导航到登录屏幕(如果已登录(在启动时选中))将用户导航到主屏幕
  • 现在您可以显示底部导航。酒吧。例如“首页”“新闻”
  • 您可以处理导航中的backPresses。回家处理(禁止返回飞溅)

这就是所有人!

答案 1 :(得分:0)

一种方法是,在登录名中隐藏底部导航,并在导航至登录名时弹出主页,以使用户无法返回初始屏幕

1-您可以这样在登录片段中隐藏底部导航栏

val toolbar = activity!!.findViewById<Toolbar>(R.id.toolbar)
val bottombar = activity!!.findViewById<BottomNavigationView>(R.id.bottomNavigationView)
        toolbar.visibility = View.GONE
        bottombar.visibility = View.GONE

2-导航到登录页面时弹出初始片段

<action
            android:id="@+id/action_splashFragment_to_loginFragment"
            app:destination="@id/loginFragment"
            app:popUpTo="@+id/splashFragment"
            app:popUpToInclusive="true"/>

希望它将为您服务