How to resume the fragments ? I have created four fragments -A,B,C,D on diffrent buttons im calling these fragments e.g
public void selectFrag(View view)
Fragment fr = null;
if (view == findViewById(R.id.ivSize))
fr = new SizeFragment();
else if (view == findViewById(R.id.ivFrame))
fr = new FramesFragment();
else if (view == findViewById(R.id.ivMat))
fr = new MatFragment();
else if (view == findViewById(R.id.ivGlass))
fr = new GlassTypeFragment();
Bundle bundle = new Bundle();
bundle.putString("inside_width", insideWidth);
bundle.putString("inside_height", insideHeight);
// set Fragmentclass Arguments
fr.setArguments(bundle);
FragmentManager fm = getSupportFragmentManager();
FragmentTransaction fragmentTransaction = fm.beginTransaction();
fragmentTransaction.replace(R.id.fragment_container, fr);
fragmentTransaction.commit();
- every time i click on buttion new fragment is created.
I have two resume my previous fragment on button click instead of creating new.
android fragment
add a comment |
public void selectFrag(View view)
Fragment fr = null;
if (view == findViewById(R.id.ivSize))
fr = new SizeFragment();
else if (view == findViewById(R.id.ivFrame))
fr = new FramesFragment();
else if (view == findViewById(R.id.ivMat))
fr = new MatFragment();
else if (view == findViewById(R.id.ivGlass))
fr = new GlassTypeFragment();
Bundle bundle = new Bundle();
bundle.putString("inside_width", insideWidth);
bundle.putString("inside_height", insideHeight);
// set Fragmentclass Arguments
fr.setArguments(bundle);
FragmentManager fm = getSupportFragmentManager();
FragmentTransaction fragmentTransaction = fm.beginTransaction();
fragmentTransaction.replace(R.id.fragment_container, fr);
fragmentTransaction.commit();
- every time i click on buttion new fragment is created.
I have two resume my previous fragment on button click instead of creating new.
android fragment
add a comment |
public void selectFrag(View view)
Fragment fr = null;
if (view == findViewById(R.id.ivSize))
fr = new SizeFragment();
else if (view == findViewById(R.id.ivFrame))
fr = new FramesFragment();
else if (view == findViewById(R.id.ivMat))
fr = new MatFragment();
else if (view == findViewById(R.id.ivGlass))
fr = new GlassTypeFragment();
Bundle bundle = new Bundle();
bundle.putString("inside_width", insideWidth);
bundle.putString("inside_height", insideHeight);
// set Fragmentclass Arguments
fr.setArguments(bundle);
FragmentManager fm = getSupportFragmentManager();
FragmentTransaction fragmentTransaction = fm.beginTransaction();
fragmentTransaction.replace(R.id.fragment_container, fr);
fragmentTransaction.commit();
- every time i click on buttion new fragment is created.
I have two resume my previous fragment on button click instead of creating new.
android fragment
public void selectFrag(View view)
Fragment fr = null;
if (view == findViewById(R.id.ivSize))
fr = new SizeFragment();
else if (view == findViewById(R.id.ivFrame))
fr = new FramesFragment();
else if (view == findViewById(R.id.ivMat))
fr = new MatFragment();
else if (view == findViewById(R.id.ivGlass))
fr = new GlassTypeFragment();
Bundle bundle = new Bundle();
bundle.putString("inside_width", insideWidth);
bundle.putString("inside_height", insideHeight);
// set Fragmentclass Arguments
fr.setArguments(bundle);
FragmentManager fm = getSupportFragmentManager();
FragmentTransaction fragmentTransaction = fm.beginTransaction();
fragmentTransaction.replace(R.id.fragment_container, fr);
fragmentTransaction.commit();
- every time i click on buttion new fragment is created.
I have two resume my previous fragment on button click instead of creating new.
android fragment
android fragment
edited Nov 13 '18 at 14:58
user10645573
asked Nov 13 '18 at 13:17
PHP MasterPHP Master
84
84
add a comment |
add a comment |
2 Answers
2
active
oldest
votes
Add your fragments to backstack and when you would like to show again one of them get it from the backstack.
can you please provide source code to pop up specific fragment from stack
– PHP Master
Nov 14 '18 at 5:37
add a comment |
Just retain the instance and the onResume will be hit instead of onCreate.
//MEMBER VARIABLES OF THE CLASS
Fragment sizeFragment = new SizeFragment;
Fragment framesFragment = new FramesFragment;
Fragment matFragment = new MatFragment;
Fragment glassTypeFragment = new GlassTypeFragment;
Fragment selectedFragment = null
private void updateFragment(View view)
if (view == findViewById(R.id.ivSize))
selectedFragment = sizeFragment;
else if (view == findViewById(R.id.ivFrame))
selectedFragment = framesFragment;
else if (view == findViewById(R.id.ivMat))
selectedFragment = matFragment;
else if (view == findViewById(R.id.ivGlass))
selectedFragment = glassTypeFragment;
Bundle bundle = new Bundle();
bundle.putString("inside_width", insideWidth);
bundle.putString("inside_height", insideHeight);
// set Fragmentclass Arguments
fr.setArguments(bundle);
FragmentManager fm = getSupportFragmentManager();
FragmentTransaction fragmentTransaction = fm.beginTransaction();
fragmentTransaction.replace(R.id.fragment_container, selectedFragment);
fragmentTransaction.commit();
I think it's also worth mentioning that doing a findById each time to compare which fragment to show is a bit heavy in searching xml, I'm sure you can find a better architecture to know which one should be showing, but maybe I'm wrong.
Hope this helps.
Happy Coding.
add a comment |
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',
autoActivateHeartbeat: false,
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
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53281865%2fhow-to-resume-the-fragments-i-have-created-four-fragments-a-b-c-d-on-diffrent%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
Add your fragments to backstack and when you would like to show again one of them get it from the backstack.
can you please provide source code to pop up specific fragment from stack
– PHP Master
Nov 14 '18 at 5:37
add a comment |
Add your fragments to backstack and when you would like to show again one of them get it from the backstack.
can you please provide source code to pop up specific fragment from stack
– PHP Master
Nov 14 '18 at 5:37
add a comment |
Add your fragments to backstack and when you would like to show again one of them get it from the backstack.
Add your fragments to backstack and when you would like to show again one of them get it from the backstack.
answered Nov 13 '18 at 13:21
justjust
6031923
6031923
can you please provide source code to pop up specific fragment from stack
– PHP Master
Nov 14 '18 at 5:37
add a comment |
can you please provide source code to pop up specific fragment from stack
– PHP Master
Nov 14 '18 at 5:37
can you please provide source code to pop up specific fragment from stack
– PHP Master
Nov 14 '18 at 5:37
can you please provide source code to pop up specific fragment from stack
– PHP Master
Nov 14 '18 at 5:37
add a comment |
Just retain the instance and the onResume will be hit instead of onCreate.
//MEMBER VARIABLES OF THE CLASS
Fragment sizeFragment = new SizeFragment;
Fragment framesFragment = new FramesFragment;
Fragment matFragment = new MatFragment;
Fragment glassTypeFragment = new GlassTypeFragment;
Fragment selectedFragment = null
private void updateFragment(View view)
if (view == findViewById(R.id.ivSize))
selectedFragment = sizeFragment;
else if (view == findViewById(R.id.ivFrame))
selectedFragment = framesFragment;
else if (view == findViewById(R.id.ivMat))
selectedFragment = matFragment;
else if (view == findViewById(R.id.ivGlass))
selectedFragment = glassTypeFragment;
Bundle bundle = new Bundle();
bundle.putString("inside_width", insideWidth);
bundle.putString("inside_height", insideHeight);
// set Fragmentclass Arguments
fr.setArguments(bundle);
FragmentManager fm = getSupportFragmentManager();
FragmentTransaction fragmentTransaction = fm.beginTransaction();
fragmentTransaction.replace(R.id.fragment_container, selectedFragment);
fragmentTransaction.commit();
I think it's also worth mentioning that doing a findById each time to compare which fragment to show is a bit heavy in searching xml, I'm sure you can find a better architecture to know which one should be showing, but maybe I'm wrong.
Hope this helps.
Happy Coding.
add a comment |
Just retain the instance and the onResume will be hit instead of onCreate.
//MEMBER VARIABLES OF THE CLASS
Fragment sizeFragment = new SizeFragment;
Fragment framesFragment = new FramesFragment;
Fragment matFragment = new MatFragment;
Fragment glassTypeFragment = new GlassTypeFragment;
Fragment selectedFragment = null
private void updateFragment(View view)
if (view == findViewById(R.id.ivSize))
selectedFragment = sizeFragment;
else if (view == findViewById(R.id.ivFrame))
selectedFragment = framesFragment;
else if (view == findViewById(R.id.ivMat))
selectedFragment = matFragment;
else if (view == findViewById(R.id.ivGlass))
selectedFragment = glassTypeFragment;
Bundle bundle = new Bundle();
bundle.putString("inside_width", insideWidth);
bundle.putString("inside_height", insideHeight);
// set Fragmentclass Arguments
fr.setArguments(bundle);
FragmentManager fm = getSupportFragmentManager();
FragmentTransaction fragmentTransaction = fm.beginTransaction();
fragmentTransaction.replace(R.id.fragment_container, selectedFragment);
fragmentTransaction.commit();
I think it's also worth mentioning that doing a findById each time to compare which fragment to show is a bit heavy in searching xml, I'm sure you can find a better architecture to know which one should be showing, but maybe I'm wrong.
Hope this helps.
Happy Coding.
add a comment |
Just retain the instance and the onResume will be hit instead of onCreate.
//MEMBER VARIABLES OF THE CLASS
Fragment sizeFragment = new SizeFragment;
Fragment framesFragment = new FramesFragment;
Fragment matFragment = new MatFragment;
Fragment glassTypeFragment = new GlassTypeFragment;
Fragment selectedFragment = null
private void updateFragment(View view)
if (view == findViewById(R.id.ivSize))
selectedFragment = sizeFragment;
else if (view == findViewById(R.id.ivFrame))
selectedFragment = framesFragment;
else if (view == findViewById(R.id.ivMat))
selectedFragment = matFragment;
else if (view == findViewById(R.id.ivGlass))
selectedFragment = glassTypeFragment;
Bundle bundle = new Bundle();
bundle.putString("inside_width", insideWidth);
bundle.putString("inside_height", insideHeight);
// set Fragmentclass Arguments
fr.setArguments(bundle);
FragmentManager fm = getSupportFragmentManager();
FragmentTransaction fragmentTransaction = fm.beginTransaction();
fragmentTransaction.replace(R.id.fragment_container, selectedFragment);
fragmentTransaction.commit();
I think it's also worth mentioning that doing a findById each time to compare which fragment to show is a bit heavy in searching xml, I'm sure you can find a better architecture to know which one should be showing, but maybe I'm wrong.
Hope this helps.
Happy Coding.
Just retain the instance and the onResume will be hit instead of onCreate.
//MEMBER VARIABLES OF THE CLASS
Fragment sizeFragment = new SizeFragment;
Fragment framesFragment = new FramesFragment;
Fragment matFragment = new MatFragment;
Fragment glassTypeFragment = new GlassTypeFragment;
Fragment selectedFragment = null
private void updateFragment(View view)
if (view == findViewById(R.id.ivSize))
selectedFragment = sizeFragment;
else if (view == findViewById(R.id.ivFrame))
selectedFragment = framesFragment;
else if (view == findViewById(R.id.ivMat))
selectedFragment = matFragment;
else if (view == findViewById(R.id.ivGlass))
selectedFragment = glassTypeFragment;
Bundle bundle = new Bundle();
bundle.putString("inside_width", insideWidth);
bundle.putString("inside_height", insideHeight);
// set Fragmentclass Arguments
fr.setArguments(bundle);
FragmentManager fm = getSupportFragmentManager();
FragmentTransaction fragmentTransaction = fm.beginTransaction();
fragmentTransaction.replace(R.id.fragment_container, selectedFragment);
fragmentTransaction.commit();
I think it's also worth mentioning that doing a findById each time to compare which fragment to show is a bit heavy in searching xml, I'm sure you can find a better architecture to know which one should be showing, but maybe I'm wrong.
Hope this helps.
Happy Coding.
answered Nov 13 '18 at 13:30
SamSam
3,05011123
3,05011123
add a comment |
add a comment |
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.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53281865%2fhow-to-resume-the-fragments-i-have-created-four-fragments-a-b-c-d-on-diffrent%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
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