Autore Topic: Problema ActionBar  (Letto 394 volte)

Offline lillogoal

  • Utente normale
  • ***
  • Post: 167
  • Respect: +4
    • Google+
    • lillosogliani
    • Mostra profilo
    • LilloNet
  • Dispositivo Android:
    Galaxy s3, Nexus 7,galaxy s advance,galaxy scl
  • Play Store ID:
    Lillonet Inc.
  • Sistema operativo:
    Windows 8,7 & Kali-Linux
Problema ActionBar
« il: 23 Agosto 2013, 19:49:44 CEST »
0
Salve a tutti,
sto riscontrando un problema con le action bar, vi spiego  bene.
Allora se io sono su una tab (selezionata diciamo) se ci cliccassi per sbaglio l'app crasha io vorrei che ci non avvenga... però non riesco a capire.
Vi posto un po' del codice che ho messo nel MAIN ACTIVITY PER LA CONFIGURAZIONE DELLE TAB.
Codice (Java): [Seleziona]
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.
        }

    }

Log CAT
Codice: [Seleziona]
java.lang.IllegalStateException: Can't change container ID of fragment Tab_Search{423205c0 #1 id=0x1020002 Search File}: was 16908290 now 1
        at android.app.BackStackRecord.doAddOp(BackStackRecord.java:365)
        at android.app.BackStackRecord.replace(BackStackRecord.java:387)
        at android.app.BackStackRecord.replace(BackStackRecord.java:379)
        at com.megadown.megacodownloader.MainActivity$TabListener.onTabReselected(MainActivity.java:144)
        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:532)
        at android.view.View.performClick(View.java:4211)
        at android.view.View$PerformClick.run(View.java:17267)
        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:4898)
        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:1006)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:773)
        at dalvik.system.NativeStart.main(Native Method)
« Ultima modifica: 24 Agosto 2013, 10:15:17 CEST da lillogoal »
Chi non progetta la sicurezza , programma il fallimento! K.M

Offline bradipao

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 4043
  • keep it simple
  • Respect: +567
    • Github
    • Google+
    • bradipao
    • Mostra profilo
  • Dispositivo Android:
    Nexus 5
  • Play Store ID:
    Bradipao
  • Sistema operativo:
    W7
Re:Problema ActionBar
« Risposta #1 il: 24 Agosto 2013, 09:52:34 CEST »
+1
Puoi postare il LogCat del crash?
NON rispondo a domande nei messaggi privati
Bradipao @ Play Store

Offline lillogoal

  • Utente normale
  • ***
  • Post: 167
  • Respect: +4
    • Google+
    • lillosogliani
    • Mostra profilo
    • LilloNet
  • Dispositivo Android:
    Galaxy s3, Nexus 7,galaxy s advance,galaxy scl
  • Play Store ID:
    Lillonet Inc.
  • Sistema operativo:
    Windows 8,7 & Kali-Linux
Re:Problema ActionBar
« Risposta #2 il: 24 Agosto 2013, 10:09:58 CEST »
0
Subito!! Lo metto nel post principale... Scusami

Edit 10.15
postato

Post unito: 24 Agosto 2013, 10:28:56 CEST
Ho risolto mi sa, facendo così:
 
Codice (Java): [Seleziona]
public void onTabReselected(ActionBar.Tab tab, FragmentTransaction ft) {

              //  ft.replace(tab.getPosition(),mFragment); [b]togliendo questo[/b]

            // User selected the already selected tab. Usually do nothing.
        }
« Ultima modifica: 24 Agosto 2013, 10:28:56 CEST da lillogoal, Reason: Merged DoublePost »
Chi non progetta la sicurezza , programma il fallimento! K.M