fragmentmanager

onAttach() not called in Fragment

我怕爱的太早我们不能终老 提交于 2019-11-27 19:34:31
My Fragment doesn't call onAttach(context) method when it launched from AppCompatActivity . Fragment creating in XML: <fragment android:id="@+id/toolbar" class="package.MainToolbarFragment" android:layout_width="match_parent" android:layout_height="wrap_content" tools:layout="@layout/fragment_main_toolbar" /> But if I extends it from support.v4.Fragment , onAttach(context) call ! What could be the problem? Of course, I can extend all fragments from v4.Fragment , but I don't want it. Is it bad practice? Also project min sdk 14. It's not called because this method has been added in API 23. If

What does FragmentManager and FragmentTransaction exactly do?

十年热恋 提交于 2019-11-27 17:35:56
I have simple code below FragmentManager fragmentManager = getFragmentManager(); FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction(); fragmentTransaction.replace(R.id.fragment_container, mFeedFragment); fragmentTransaction.addToBackStack(null); fragmentTransaction.commit(); What do these lines of code do? Zelldon getFragmentManager() Return the FragmentManager for interacting with fragments associated with this activity. FragmentManager which is used to create transactions for adding, removing or replacing fragments. fragmentManager.beginTransaction(); Start a series

Passing data back to previous fragment from current fragment

不问归期 提交于 2019-11-27 17:35:13
问题 I am Using Navigation Drawer in my app. I have one MainActivity and rest of are Fragments. So the issue is Suppose i have three fragments like A,B,C. Now in A i have one button and i am sending data from A>B. For example putSring("datafrom A","datafrom A"); Now in B i receive data From A. I have one button in B,and i am sending data from B>C. For example putSring("datafrom B","datafrom B"); Now in C i receive data From B. Then, I have one Button in C,and sending data from C>B. For example

FragmentTransaction hide/show doesn't work sometimes

我们两清 提交于 2019-11-27 16:23:21
问题 I have an activity with bottom navigation tabs that are changing the fragments in it. When I click back and forth on those tabs, at some point it stops working. Code executes just fine as I put some logs in it. But the fragments aren't being switched. Code is in kotlin but it's rather straight forward fun showTabFragment(tag: String) { val currentFragment: Fragment? = supportFragmentManager.fragments?.lastOrNull() var fragment = supportFragmentManager.findFragmentByTag(tag) val fragmentExists

IllegalStateException Fragment already added - Android

做~自己de王妃 提交于 2019-11-27 08:38:30
问题 I am adding fragment like bellow : @OnClick(R.id.lnNews) void newsList() { String tagName = returnStatusFragment(getString(R.string.news_list_fragment)); if (!TextUtils.isEmpty(tagName) && tagName.equals(getString(R.string.news_list_fragment))) { frameWorkTableFragment.setVisibility(View.VISIBLE); if (getActivity() != null) { android.support.v4.app.FragmentManager fragmentManager = getActivity().getSupportFragmentManager(); Fragment news = fragmentManager.findFragmentByTag(getString(R.string

What does FragmentManager and FragmentTransaction exactly do?

时光总嘲笑我的痴心妄想 提交于 2019-11-27 05:10:19
问题 I have simple code below FragmentManager fragmentManager = getFragmentManager(); FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction(); fragmentTransaction.replace(R.id.fragment_container, mFeedFragment); fragmentTransaction.addToBackStack(null); fragmentTransaction.commit(); What do these lines of code do? 回答1: getFragmentManager() Return the FragmentManager for interacting with fragments associated with this activity. FragmentManager which is used to create

onAttach() not called in Fragment

谁说胖子不能爱 提交于 2019-11-27 04:23:19
问题 My Fragment doesn't call onAttach(context) method when it launched from AppCompatActivity . Fragment creating in XML: <fragment android:id="@+id/toolbar" class="package.MainToolbarFragment" android:layout_width="match_parent" android:layout_height="wrap_content" tools:layout="@layout/fragment_main_toolbar" /> But if I extends it from support.v4.Fragment , onAttach(context) call ! What could be the problem? Of course, I can extend all fragments from v4.Fragment , but I don't want it. Is it bad

Cannot resolve method 'show(android.support.v4.app.FragmentManager, java.lang.String)

|▌冷眼眸甩不掉的悲伤 提交于 2019-11-27 01:28:13
问题 For some reason when I try to show a Dialog I get an error from dialog.show(fm, DIALOG_DATE); saying Cannot resolve method 'show(android.support.v4.app.FragmentManager, java.lang.String)' Why can't it resolve the method? mDateButton.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { FragmentManager fm = getActivity().getSupportFragmentManager(); DatePickerFragment dialog = new DatePickerFragment(); dialog.show(fm, DIALOG_DATE); } }); Here is the rest of my class:

Android FragmentManager BackStackRecord.run throwing NullPointerException

别说谁变了你拦得住时间么 提交于 2019-11-26 20:18:54
I sometimes get the following exception when working with Fragments: FATAL EXCEPTION: main java.lang.NullPointerException at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:591) at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1416) at android.support.v4.app.FragmentManagerImpl$1.run(FragmentManager.java:420) at android.os.Handler.handleCallback(Handler.java:615) at android.os.Handler.dispatchMessage(Handler.java:92) at android.os.Looper.loop(Looper.java:137) at android.app.ActivityThread.main(ActivityThread.java:4745) at java.lang.reflect

Fragment must be a public static class to be properly recreated from instance state

ぐ巨炮叔叔 提交于 2019-11-26 17:48:59
问题 After updating to the latest support repository, compile 'com.android.support:appcompat-v7:24.2.0' compile 'com.android.support:design:24.2.0' compile 'com.android.support:percent:24.2.0' compile 'com.android.support:recyclerview-v7:24.2.0' I'm getting the weird exception. java.lang.IllegalStateException: Fragment null must be a public static class to be properly recreated from instance state. at android.support.v4.app.BackStackRecord.doAddOp(BackStackRecord.java:435) at android.support.v4