0
我遇到了一个操作栏的问题,我解释得很好。 所以,如果我在一个标签(选择说)如果有cliccassi意外崩溃的应用程序,我希望没有发生......但我不明白。 我会发布一些代码,我把它放在TAB配置的主要活动中。ActionBar崩溃Android
private class TabListener<T extends Fragment> implements ActionBar.TabListener {
private Fragment mFragment;
private final Activity mActivity;
private final String mTag;
private final Class<T> mClass;
public TabListener(Activity activity, String tag, Class<T> clz) {
mActivity = activity;
mTag = tag;
mClass = clz;
}
public void onTabSelected(ActionBar.Tab tab, FragmentTransaction ft) {
// Check if the fragment is already initialized
if (mFragment == null) {
// If not, instantiate and add it to the activity
mFragment = Fragment.instantiate(mActivity, mClass.getName());
ft.add(android.R.id.content, mFragment, mTag);
} else {
// If it exists, simply attach it in order to show it
ft.show(mFragment);
//ft.attach(mFragment);
}
}
public void onTabUnselected(ActionBar.Tab tab, FragmentTransaction ft) {
if (mFragment != null) {
// Detach the fragment, because another one is being attached
// ft.detach(mFragment);
ft.hide(mFragment);
}
}
public void onTabReselected(ActionBar.Tab tab, FragmentTransaction ft) {
ft.replace(tab.getPosition(),mFragment);
// User selected the already selected tab. Usually do nothing.
}
}
日志:
java.lang.IllegalArgumentException: Must use non-zero containerViewId
at android.app.BackStackRecord.replace(BackStackRecord.java:384)
at android.app.BackStackRecord.replace(BackStackRecord.java:379)
at com.megadonate.megadownloader.MainActivity$TabListener.onTabReselected(MainActivity.java:158)
at com.android.internal.app.ActionBarImpl.selectTab(ActionBarImpl.java:577)
at com.android.internal.app.ActionBarImpl$TabImpl.select(ActionBarImpl.java:1084)
at com.android.internal.widget.ScrollingTabContainerView$TabClickListener.onClick(ScrollingTabContainerView.java:537)
at android.view.View.performClick(View.java:4232)
at android.view.View$PerformClick.run(View.java:17318)
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:4921)
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:1038)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:805)
at dalvik.system.NativeStart.main(Native Method)
你的日志说什么? –
在主帖后加入 – lillogoal