How to navigate to Half Fragment ? (Navigation Architecture Component)











up vote
0
down vote

favorite












I am trying Navigation architecture Component in My app.
Earlier i Used Fragment Transaction's to achieve the below feature.
Basically i want to navigate from.



FragmentA->FragmentB
(custom fragment partially transparent and half of screen size)



If i am using Navigation component and try



Navigation.findNavController(view).navigate(R.id.action_FragmentA_to_FragmentB)


Then the result is the FragmentA is replaced by FragmentB and the background fragment is not visible.



I want to know of a solution if it's allowed by Navigation Architecture Component.



P.S: I have heard about nested Navigation Host,But is it good to use from inside Fragment.



Update:



The FragmentB will have action's for further transaction's and
example:



FragmentA->FragmentB->FragmentC (custom fragment partially transparent and half of screen size)



And Fragment C should replace FragmentB when user press back button and backStack should be maintained for all the fragment transactions.



Demo










share|improve this question




























    up vote
    0
    down vote

    favorite












    I am trying Navigation architecture Component in My app.
    Earlier i Used Fragment Transaction's to achieve the below feature.
    Basically i want to navigate from.



    FragmentA->FragmentB
    (custom fragment partially transparent and half of screen size)



    If i am using Navigation component and try



    Navigation.findNavController(view).navigate(R.id.action_FragmentA_to_FragmentB)


    Then the result is the FragmentA is replaced by FragmentB and the background fragment is not visible.



    I want to know of a solution if it's allowed by Navigation Architecture Component.



    P.S: I have heard about nested Navigation Host,But is it good to use from inside Fragment.



    Update:



    The FragmentB will have action's for further transaction's and
    example:



    FragmentA->FragmentB->FragmentC (custom fragment partially transparent and half of screen size)



    And Fragment C should replace FragmentB when user press back button and backStack should be maintained for all the fragment transactions.



    Demo










    share|improve this question


























      up vote
      0
      down vote

      favorite









      up vote
      0
      down vote

      favorite











      I am trying Navigation architecture Component in My app.
      Earlier i Used Fragment Transaction's to achieve the below feature.
      Basically i want to navigate from.



      FragmentA->FragmentB
      (custom fragment partially transparent and half of screen size)



      If i am using Navigation component and try



      Navigation.findNavController(view).navigate(R.id.action_FragmentA_to_FragmentB)


      Then the result is the FragmentA is replaced by FragmentB and the background fragment is not visible.



      I want to know of a solution if it's allowed by Navigation Architecture Component.



      P.S: I have heard about nested Navigation Host,But is it good to use from inside Fragment.



      Update:



      The FragmentB will have action's for further transaction's and
      example:



      FragmentA->FragmentB->FragmentC (custom fragment partially transparent and half of screen size)



      And Fragment C should replace FragmentB when user press back button and backStack should be maintained for all the fragment transactions.



      Demo










      share|improve this question















      I am trying Navigation architecture Component in My app.
      Earlier i Used Fragment Transaction's to achieve the below feature.
      Basically i want to navigate from.



      FragmentA->FragmentB
      (custom fragment partially transparent and half of screen size)



      If i am using Navigation component and try



      Navigation.findNavController(view).navigate(R.id.action_FragmentA_to_FragmentB)


      Then the result is the FragmentA is replaced by FragmentB and the background fragment is not visible.



      I want to know of a solution if it's allowed by Navigation Architecture Component.



      P.S: I have heard about nested Navigation Host,But is it good to use from inside Fragment.



      Update:



      The FragmentB will have action's for further transaction's and
      example:



      FragmentA->FragmentB->FragmentC (custom fragment partially transparent and half of screen size)



      And Fragment C should replace FragmentB when user press back button and backStack should be maintained for all the fragment transactions.



      Demo







      android android-fragments android-architecture-components android-jetpack android-navigation-component






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Nov 22 at 10:16

























      asked Nov 21 at 17:11









      Anmol

      8910




      8910
























          2 Answers
          2






          active

          oldest

          votes

















          up vote
          2
          down vote













          You can use BottomSheetDialogFragment to get the desired result.

          More info: https://developer.android.com/reference/android/support/design/widget/BottomSheetDialogFragment






          share|improve this answer





















          • Have you tried it using Navigation architecture Component ?? and give's the above result
            – Anmol
            Nov 21 at 17:19










          • @ANMOLSRIVASTAVA haven't tried with the Navigation Architecture but BottomSheet can easily give you that result.
            – DarShan
            Nov 21 at 17:20






          • 3




            You should just use a bottom sheet (I say, as the person who wrote the Navigation Architecture Component).
            – ianhanniballake
            Nov 21 at 17:22










          • i Know how to create bottomSheet but Navigation Architecture replace's the below fragment and the fragment below is not visible.
            – Anmol
            Nov 21 at 17:22






          • 1




            You shouldn't be using Navigation at all for dialogs or bottom sheet dialogs. Just use show() to show the bottom sheet.
            – ianhanniballake
            Nov 21 at 17:53


















          up vote
          0
          down vote



          accepted










          TLDR:I used nested graphs for achieving the requirement.



          Hello, thanks for help but navigating in BottomSheet is achieved by me using below procedure.





          • MainActivity




            • NavHost(FragXYZ->FragA)


              • (Inside Fragment A)BottomSheetDialogFragment.show() to display the bottomSheetMenu


                • (Inside Fragment B) BottomSheetDialogChildFragment(start child Fragment of BottomSheetDialogFragment using Fragment
                  Transaction) extends NavHostFragment








          Demo:GitHub






          share|improve this answer





















            Your Answer






            StackExchange.ifUsing("editor", function () {
            StackExchange.using("externalEditor", function () {
            StackExchange.using("snippets", function () {
            StackExchange.snippets.init();
            });
            });
            }, "code-snippets");

            StackExchange.ready(function() {
            var channelOptions = {
            tags: "".split(" "),
            id: "1"
            };
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function() {
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled) {
            StackExchange.using("snippets", function() {
            createEditor();
            });
            }
            else {
            createEditor();
            }
            });

            function createEditor() {
            StackExchange.prepareEditor({
            heartbeatType: 'answer',
            convertImagesToLinks: true,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            bindNavPrevention: true,
            postfix: "",
            imageUploader: {
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            },
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            });


            }
            });














            draft saved

            draft discarded


















            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53417322%2fhow-to-navigate-to-half-fragment-navigation-architecture-component%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown

























            2 Answers
            2






            active

            oldest

            votes








            2 Answers
            2






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes








            up vote
            2
            down vote













            You can use BottomSheetDialogFragment to get the desired result.

            More info: https://developer.android.com/reference/android/support/design/widget/BottomSheetDialogFragment






            share|improve this answer





















            • Have you tried it using Navigation architecture Component ?? and give's the above result
              – Anmol
              Nov 21 at 17:19










            • @ANMOLSRIVASTAVA haven't tried with the Navigation Architecture but BottomSheet can easily give you that result.
              – DarShan
              Nov 21 at 17:20






            • 3




              You should just use a bottom sheet (I say, as the person who wrote the Navigation Architecture Component).
              – ianhanniballake
              Nov 21 at 17:22










            • i Know how to create bottomSheet but Navigation Architecture replace's the below fragment and the fragment below is not visible.
              – Anmol
              Nov 21 at 17:22






            • 1




              You shouldn't be using Navigation at all for dialogs or bottom sheet dialogs. Just use show() to show the bottom sheet.
              – ianhanniballake
              Nov 21 at 17:53















            up vote
            2
            down vote













            You can use BottomSheetDialogFragment to get the desired result.

            More info: https://developer.android.com/reference/android/support/design/widget/BottomSheetDialogFragment






            share|improve this answer





















            • Have you tried it using Navigation architecture Component ?? and give's the above result
              – Anmol
              Nov 21 at 17:19










            • @ANMOLSRIVASTAVA haven't tried with the Navigation Architecture but BottomSheet can easily give you that result.
              – DarShan
              Nov 21 at 17:20






            • 3




              You should just use a bottom sheet (I say, as the person who wrote the Navigation Architecture Component).
              – ianhanniballake
              Nov 21 at 17:22










            • i Know how to create bottomSheet but Navigation Architecture replace's the below fragment and the fragment below is not visible.
              – Anmol
              Nov 21 at 17:22






            • 1




              You shouldn't be using Navigation at all for dialogs or bottom sheet dialogs. Just use show() to show the bottom sheet.
              – ianhanniballake
              Nov 21 at 17:53













            up vote
            2
            down vote










            up vote
            2
            down vote









            You can use BottomSheetDialogFragment to get the desired result.

            More info: https://developer.android.com/reference/android/support/design/widget/BottomSheetDialogFragment






            share|improve this answer












            You can use BottomSheetDialogFragment to get the desired result.

            More info: https://developer.android.com/reference/android/support/design/widget/BottomSheetDialogFragment







            share|improve this answer












            share|improve this answer



            share|improve this answer










            answered Nov 21 at 17:14









            DarShan

            7751516




            7751516












            • Have you tried it using Navigation architecture Component ?? and give's the above result
              – Anmol
              Nov 21 at 17:19










            • @ANMOLSRIVASTAVA haven't tried with the Navigation Architecture but BottomSheet can easily give you that result.
              – DarShan
              Nov 21 at 17:20






            • 3




              You should just use a bottom sheet (I say, as the person who wrote the Navigation Architecture Component).
              – ianhanniballake
              Nov 21 at 17:22










            • i Know how to create bottomSheet but Navigation Architecture replace's the below fragment and the fragment below is not visible.
              – Anmol
              Nov 21 at 17:22






            • 1




              You shouldn't be using Navigation at all for dialogs or bottom sheet dialogs. Just use show() to show the bottom sheet.
              – ianhanniballake
              Nov 21 at 17:53


















            • Have you tried it using Navigation architecture Component ?? and give's the above result
              – Anmol
              Nov 21 at 17:19










            • @ANMOLSRIVASTAVA haven't tried with the Navigation Architecture but BottomSheet can easily give you that result.
              – DarShan
              Nov 21 at 17:20






            • 3




              You should just use a bottom sheet (I say, as the person who wrote the Navigation Architecture Component).
              – ianhanniballake
              Nov 21 at 17:22










            • i Know how to create bottomSheet but Navigation Architecture replace's the below fragment and the fragment below is not visible.
              – Anmol
              Nov 21 at 17:22






            • 1




              You shouldn't be using Navigation at all for dialogs or bottom sheet dialogs. Just use show() to show the bottom sheet.
              – ianhanniballake
              Nov 21 at 17:53
















            Have you tried it using Navigation architecture Component ?? and give's the above result
            – Anmol
            Nov 21 at 17:19




            Have you tried it using Navigation architecture Component ?? and give's the above result
            – Anmol
            Nov 21 at 17:19












            @ANMOLSRIVASTAVA haven't tried with the Navigation Architecture but BottomSheet can easily give you that result.
            – DarShan
            Nov 21 at 17:20




            @ANMOLSRIVASTAVA haven't tried with the Navigation Architecture but BottomSheet can easily give you that result.
            – DarShan
            Nov 21 at 17:20




            3




            3




            You should just use a bottom sheet (I say, as the person who wrote the Navigation Architecture Component).
            – ianhanniballake
            Nov 21 at 17:22




            You should just use a bottom sheet (I say, as the person who wrote the Navigation Architecture Component).
            – ianhanniballake
            Nov 21 at 17:22












            i Know how to create bottomSheet but Navigation Architecture replace's the below fragment and the fragment below is not visible.
            – Anmol
            Nov 21 at 17:22




            i Know how to create bottomSheet but Navigation Architecture replace's the below fragment and the fragment below is not visible.
            – Anmol
            Nov 21 at 17:22




            1




            1




            You shouldn't be using Navigation at all for dialogs or bottom sheet dialogs. Just use show() to show the bottom sheet.
            – ianhanniballake
            Nov 21 at 17:53




            You shouldn't be using Navigation at all for dialogs or bottom sheet dialogs. Just use show() to show the bottom sheet.
            – ianhanniballake
            Nov 21 at 17:53












            up vote
            0
            down vote



            accepted










            TLDR:I used nested graphs for achieving the requirement.



            Hello, thanks for help but navigating in BottomSheet is achieved by me using below procedure.





            • MainActivity




              • NavHost(FragXYZ->FragA)


                • (Inside Fragment A)BottomSheetDialogFragment.show() to display the bottomSheetMenu


                  • (Inside Fragment B) BottomSheetDialogChildFragment(start child Fragment of BottomSheetDialogFragment using Fragment
                    Transaction) extends NavHostFragment








            Demo:GitHub






            share|improve this answer

























              up vote
              0
              down vote



              accepted










              TLDR:I used nested graphs for achieving the requirement.



              Hello, thanks for help but navigating in BottomSheet is achieved by me using below procedure.





              • MainActivity




                • NavHost(FragXYZ->FragA)


                  • (Inside Fragment A)BottomSheetDialogFragment.show() to display the bottomSheetMenu


                    • (Inside Fragment B) BottomSheetDialogChildFragment(start child Fragment of BottomSheetDialogFragment using Fragment
                      Transaction) extends NavHostFragment








              Demo:GitHub






              share|improve this answer























                up vote
                0
                down vote



                accepted







                up vote
                0
                down vote



                accepted






                TLDR:I used nested graphs for achieving the requirement.



                Hello, thanks for help but navigating in BottomSheet is achieved by me using below procedure.





                • MainActivity




                  • NavHost(FragXYZ->FragA)


                    • (Inside Fragment A)BottomSheetDialogFragment.show() to display the bottomSheetMenu


                      • (Inside Fragment B) BottomSheetDialogChildFragment(start child Fragment of BottomSheetDialogFragment using Fragment
                        Transaction) extends NavHostFragment








                Demo:GitHub






                share|improve this answer












                TLDR:I used nested graphs for achieving the requirement.



                Hello, thanks for help but navigating in BottomSheet is achieved by me using below procedure.





                • MainActivity




                  • NavHost(FragXYZ->FragA)


                    • (Inside Fragment A)BottomSheetDialogFragment.show() to display the bottomSheetMenu


                      • (Inside Fragment B) BottomSheetDialogChildFragment(start child Fragment of BottomSheetDialogFragment using Fragment
                        Transaction) extends NavHostFragment








                Demo:GitHub







                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered Nov 26 at 7:36









                Anmol

                8910




                8910






























                    draft saved

                    draft discarded




















































                    Thanks for contributing an answer to Stack Overflow!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid



                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.


                    To learn more, see our tips on writing great answers.





                    Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


                    Please pay close attention to the following guidance:


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid



                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.


                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function () {
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53417322%2fhow-to-navigate-to-half-fragment-navigation-architecture-component%23new-answer', 'question_page');
                    }
                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    Contact image not getting when fetch all contact list from iPhone by CNContact

                    count number of partitions of a set with n elements into k subsets

                    A CLEAN and SIMPLE way to add appendices to Table of Contents and bookmarks