Articles of android fragments

Android中的片段碎片通信

我在Android编程的初级水平,所以我需要你真诚的帮助。 有人帮我请。 我正在尝试使用片段构建SLIDING UI 所以我的实际怀疑是……我有一个Fragment (比如Fragment A)它有一个TextView和Button以及另一个Fragment (比如Fragment B)。 它有一个TextView 。 当我在FRAGMENT A中按下Button时,我需要在Fragment B的TextView显示Fragment A的TextView内容。我尝试了很多方法,遗憾的是我没有得到正确的输出。 我相信大家都知道。 请帮帮我。 谢谢

Android:导航到父活动会重新创建父活动

我有一个SearchAcvitity,它有一个子PersonActivity。 每个都是FragmentActivity的。 这是我的清单文件: 从SearchFragment,我像这样启动PersonActivity: Intent i = new Intent(getActivity(), PersonActivity.class); startActivity(i); 仅此一项就会在PersonFragment中将面向左侧的插入符号与app图标一起添加。 当我按下此图标时,它会重新创建SearchAcvitiy(和片段),因此其先前的状态将丢失。 当我改为从PersonFragment按下后退按钮时,它会通过onResume(…)返回SearchActivity的SearchFragment,其状态完好无损。 如何通过up动作实现这一目标? 请注意,我不在PersonFragment中进行此调用: 。getActivity()getActionBar()setDisplayHomeAsUpEnabled(真)。

使用TabLayout Viewpager时,获取“已经管理ID为0的GoogleApiClient”exception

我想使用TabLayout ViewPager Fragments集成Google Signup。 ViewPager包含两个片段LoginFragment和RegistrationFragment,两者都包含“Google注册”按钮。 问题是我在启动活动时遇到以下错误。 java.lang.IllegalStateException:已经管理了ID为0的GoogleApiClient 完整的错误日志 – java.lang.IllegalStateException: Already managing a GoogleApiClient with id 0 at com.google.android.gms.common.internal.zzac.zza(Unknown Source) at com.google.android.gms.internal.zzzt.zza(Unknown Source) at com.google.android.gms.common.api.GoogleApiClient$Builder.zzf(Unknown Source) at com.google.android.gms.common.api.GoogleApiClient$Builder.build(Unknown Source) at com.naturesouq_shopping.fragment.RegistrationFragment.buildGoogleApiClient(RegistrationFragment.java:174) at com.naturesouq_shopping.fragment.RegistrationFragment.getIds(RegistrationFragment.java:140) at com.naturesouq_shopping.fragment.RegistrationFragment.onCreateView(RegistrationFragment.java:85) at android.support.v4.app.Fragment.performCreateView(Fragment.java:2184) at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1298) at android.support.v4.app.FragmentManagerImpl.moveFragmentsToInvisible(FragmentManager.java:2323) at android.support.v4.app.FragmentManagerImpl.executeOpsTogether(FragmentManager.java:2136) at android.support.v4.app.FragmentManagerImpl.optimizeAndExecuteOps(FragmentManager.java:2092) at android.support.v4.app.FragmentManagerImpl.execSingleAction(FragmentManager.java:1969) at android.support.v4.app.BackStackRecord.commitNowAllowingStateLoss(BackStackRecord.java:620) at android.support.v4.app.FragmentStatePagerAdapter.finishUpdate(FragmentStatePagerAdapter.java:166) at android.support.v4.view.ViewPager.populate(ViewPager.java:1268) at android.support.v4.view.ViewPager.populate(ViewPager.java:1116) […]

ViewPager片段第二次在导航抽屉片段内正常工作

我有Navigation Drawer ,其中Tab Viewer有一个片段。 在tabviewer中,我正在使用ViewPager ,它也在Fragment 。 ViewPager的代码是 viewPager = (ViewPager) rootView.findViewById(R.id.pager); viewPager.setAdapter(new TabsPagerAdapter(((FragmentActivity)getActivity()).getSupportFragmentManager())); PagerSlidingTabStrip tabsStrip = (PagerSlidingTabStrip) rootView.findViewById(R.id.tabs); tabsStrip.setViewPager(viewPager); 选项卡是在导航抽屉中的第一次点击及其内容,但第二次只有标签的标题没有其布局。 布局不会到来,并且不同选项卡之间的滑动也不起作用? 为什么它第一次工作而不是其余工作? 我附加图像两个不同点击相同的导航抽屉片段。 这是第一次点击,所以布局完美。 这是第二次尝试点击相同的片段,但只有背景,没有任何布局内容。 帮助摆脱这个问题。

在dialogfragment中删除白色背景

以下是我调用DialogFragment的方法: DialogSelectAccount myDiag=new DialogSelectAccount(); myDiag.show(ft,”Diag” ); 这是(部分)我的DialogFragment的创建方式: public class DialogSelectAccount extends DialogFragment { public DialogSelectAccount() { } @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setRetainInstance(true); } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View rootView = inflater.inflate(R.layout.dialog_select_account, container, false); tvMessage = (TextView) rootView.findViewById(R.id.tvMessage); btnAccountPublic = (Button) rootView.findViewById(R.id.btnAccountPublic); btnAccountEnterprise = (Button) rootView.findViewById(R.id.btnAccountEnterprise); tvMessage.setText(message); […]

android:从片段打开chrome自定义选项卡

我有一个Activity MainActivity 。 它包含一个托管片段FragmentPlaceHolder的ViewPager 。 这个片段有一个RecyclerView 。 现在,在RecyclerView项目中单击特定视图,例如按钮,我想在新Activity打开chrome自定义选项卡。 任何人都可以帮我这个吗? 我期待逐步实施Chrome Custom tabs 。 谢谢。

SQLite数据库与片段结合使用

我正在将我的应用程序从Activity更改为Fragments,它很棒,但是我有一个错误,它不会让我打开我的数据库。 这是错误(来自logcat): 05-17 15:28:38.704 13025-13025/com.MJV.werktijden E/AndroidRuntime: FATAL EXCEPTION: main java.lang.NullPointerException at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:224) at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:164) at com.MJV.werktijden.DBAdapter.open(DBAdapter.java:71) at com.MJV.werktijden.OverviewFragment.onActivityCreated(OverviewFragment.java:38) at android.app.Fragment.performActivityCreated(Fragment.java:1703) at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:903) at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1057) at android.app.BackStackRecord.run(BackStackRecord.java:682) at android.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1435) at android.app.FragmentManagerImpl$1.run(FragmentManager.java:441) at android.os.Handler.handleCallback(Handler.java:725) at android.os.Handler.dispatchMessage(Handler.java:92) at android.os.Looper.loop(Looper.java:137) at android.app.ActivityThread.main(ActivityThread.java:5041) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:511) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560) at dalvik.system.NativeStart.main(Native Method) 我试图自己解决,但我找不到问题。 只是因为当我将它与Activity一起使用时,这个数据库确实有效。 我用这种方法打开数据库: //—opens the […]

popup窗口中的微调器出错,单击时崩溃

我有一个从Fragment调用的PopupWindow,除了我的Spinner,一切都有效。 当我点击我的Spinner时它会崩溃并给出错误: “android.view.WindowManager $ BadTokenException:无法添加窗口 – 令牌android.view.ViewRootImpl$W@421a46d8无效;您的活动是否正在运行?” 我的代码调用片段中的popup窗口: ManagerPopUp mManagerPopUp = new ManagerPopUp(getActivity()); mManagerPopUp.showPopUpAddEvent(); 我在ManagerPopUp中的代码显示Popup: public class ManagerPopUp { private static final String TAG = “PopUpManager”; private Context mContext; public ManagerPopUp(Context mContext){ this.mContext = mContext; } public PopupWindow showPopUpAddEvent(){ final PopupWindow popUp = new PopupWindow(mContext); LayoutInflater inflater = (LayoutInflater)mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE); View layout = inflater.inflate(R.layout.popup_add_event, null); //Code […]

如何获得片段宽度?

这是我的布局。我需要在CategoryFragment中获取宽度。 所以在CategoryFragment的onViewCreated()中,我尝试了几种方法来实现它,但一切都行不通。 @Override public void onViewCreated(View view, Bundle savedInstanceState) { super.onViewCreated(view, savedInstanceState); View v = view; // View v = getView(); int w1 = v.getWidth(); //return 0 int w2 = v.getLayoutParams().width; //return NullPointerException int w3 = v.getMeasuredWidth(); //return 0 } 我该怎么做才能获得片段宽度?感谢任何帮助。谢谢。 🙂

NullPointerException android.support.v4.app.FragmentManagerImpl.saveFragmentBasicState

使用Share Intent应用程序崩溃时出现以下错误 01-25 12:16:09.270: E/AndroidRuntime(28699): FATAL EXCEPTION: main 01-25 12:16:09.270: E/AndroidRuntime(28699): java.lang.NullPointerException 01-25 12:16:09.270: E/AndroidRuntime(28699): at android.support.v4.app.FragmentManagerImpl.saveFragmentBasicState(FragmentManager.java:1576) 01-25 12:16:09.270: E/AndroidRuntime(28699): at android.support.v4.app.FragmentManagerImpl.saveAllState(FragmentManager.java:1617) 01-25 12:16:09.270: E/AndroidRuntime(28699): at android.support.v4.app.FragmentActivity.onSaveInstanceState(FragmentActivity.java:481) 01-25 12:16:09.270: E/AndroidRuntime(28699): at com.actionbarsherlock.app.SherlockFragmentActivity.onSaveInstanceState(SherlockFragmentActivity.java:127) 01-25 12:16:09.270: E/AndroidRuntime(28699): at android.app.Activity.performSaveInstanceState(Activity.java:1113) 01-25 12:16:09.270: E/AndroidRuntime(28699): at android.app.Instrumentation.callActivityOnSaveInstanceState(Instrumentation.java:1188) 01-25 12:16:09.270: E/AndroidRuntime(28699): at android.app.ActivityThread.performStopActivityInner(ActivityThread.java:2805) 01-25 12:16:09.270: E/AndroidRuntime(28699): at android.app.ActivityThread.handleStopActivity(ActivityThread.java:2863) 01-25 12:16:09.270: E/AndroidRuntime(28699): […]