Autore Topic: ragazzi problema viewflipper e tabactivity :(  (Letto 962 volte)

Offline curciolab

  • Nuovo arrivato
  • *
  • Post: 20
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Galaxy S2
  • Play Store ID:
    curciolab
  • Sistema operativo:
    Ubuntu 11.10
ragazzi problema viewflipper e tabactivity :(
« il: 28 Maggio 2012, 20:17:26 CEST »
0
Ragazzi ho provato vari codici e ho letto 2-3 thread anche nel forum ma non sono riuscito a risolvere il problema è questo :
l'effetto dello swipe a destra e sinistra funziona ma non passa da un activity all'altra :/ aiutatemi qui c'è il codice :
Codice (Java): [Seleziona]
public class MAIN extends TabActivity{
        int current_tab;

    private static final int SWIPE_MIN_DISTANCE = 120;
    private static final int SWIPE_MAX_OFF_PATH = 250;
    private static final int SWIPE_THRESHOLD_VELOCITY = 200;
    private GestureDetector gestureDetector;
    private Animation slideLeftIn;
    private Animation slideLeftOut;
    private Animation slideRightIn;
    private Animation slideRightOut;
    private ViewFlipper viewFlipper;
       
       
       
        @Override
         public void onCreate(Bundle savedInstanceState)

    {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.main);
       
        Intent apertura = new Intent(getApplicationContext(), apertura.class);
                startActivity(apertura);
       
        viewFlipper = (ViewFlipper) findViewById(R.id.flipper);

        slideLeftIn = AnimationUtils.loadAnimation(this, R.anim.slide_in_left);
        slideLeftOut = AnimationUtils
                .loadAnimation(this, R.anim.slide_out_left);
        slideRightIn = AnimationUtils
                .loadAnimation(this, R.anim.slide_in_right);
        slideRightOut = AnimationUtils.loadAnimation(this,
                R.anim.slide_out_right);

        gestureDetector = new GestureDetector(new MyGestureDetector());
     
       
       
        Resources res = getResources();
        TabHost tabHost = (TabHost) findViewById(android.R.id.tabhost);
        TabHost.TabSpec spec;
        Intent intent;
       
        intent = new Intent().setClass(this, BenchmarkPISingle.class);
        spec = tabHost.newTabSpec("Single Thread").setIndicator("Single Thread").setContent(intent);
        tabHost.addTab(spec);
        int iH = getTabWidget().getLayoutParams().height;

        for (int i = 0; i < tabHost.getTabWidget().getChildCount(); i++) {
                    tabHost.getTabWidget().getChildAt(i).getLayoutParams().height = iH;
                }
       
        intent = new Intent().setClass(this, BenchmarkPIDual.class);
        spec = tabHost.newTabSpec("Dual Thread").setIndicator("Dual Thread").setContent(intent);

        tabHost.addTab(spec);
        iH = getTabWidget().getLayoutParams().height;

        for (int i = 0; i < tabHost.getTabWidget().getChildCount(); i++) {
                    tabHost.getTabWidget().getChildAt(i).getLayoutParams().height = iH;
                }
       
        intent = new Intent().setClass(this, BenchmarkPIQuad.class);
        spec = tabHost.newTabSpec("Quad Thread").setIndicator("Quad Thread").setContent(intent);

        tabHost.addTab(spec);
        iH = getTabWidget().getLayoutParams().height;

        for (int i = 0; i < tabHost.getTabWidget().getChildCount(); i++) {
                    tabHost.getTabWidget().getChildAt(i).getLayoutParams().height = iH;
                }
       
       
        intent = new Intent().setClass(this, about.class);
        spec = tabHost.newTabSpec("About").setIndicator("About").setContent(intent);

        tabHost.addTab(spec);
        iH = getTabWidget().getLayoutParams().height;

        for (int i = 0; i < tabHost.getTabWidget().getChildCount(); i++) {
                    tabHost.getTabWidget().getChildAt(i).getLayoutParams().height = iH;
                }
       
        intent = new Intent().setClass(this, scoreboard.class);
        spec = tabHost.newTabSpec("Scoreboard").setIndicator("Scoreboard").setContent(intent);

        tabHost.addTab(spec);
        iH = getTabWidget().getLayoutParams().height;

        for (int i = 0; i < tabHost.getTabWidget().getChildCount(); i++) {
                    tabHost.getTabWidget().getChildAt(i).getLayoutParams().height = iH;
                }
       
       
        tabHost.setCurrentTabByTag("Single Thread");
       
       
       
    }
       
        @Override
        protected void onDestroy() {
                // TODO Auto-generated method stub
                super.onDestroy();
        }
       
         

       
          class MyGestureDetector extends SimpleOnGestureListener {
                @Override
                public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
                        float velocityY) {
                   
                    try {
                        if (Math.abs(e1.getY() - e2.getY()) > SWIPE_MAX_OFF_PATH)
                            return false;

                        if (e1.getX() - e2.getX() > SWIPE_MIN_DISTANCE
                                && Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY) {

                                viewFlipper.setInAnimation(slideLeftIn);
                                viewFlipper.setOutAnimation(slideLeftOut);
                                viewFlipper.showNext();
                               

                                overridePendingTransition(R.anim.slide_in_left, R.anim.slide_out_left);
                            }
                         else if (e2.getX() - e1.getX() > SWIPE_MIN_DISTANCE
                                && Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY) {


                                viewFlipper.setInAnimation(slideRightIn);
                                viewFlipper.setOutAnimation(slideRightOut);
                                viewFlipper.showPrevious();                    
                            }
                       
                    } catch (Exception ex) {
                       
                    }
                    return false;
                }
            }

           
             @Override public boolean onTouchEvent(MotionEvent event) { if
             (gestureDetector.onTouchEvent(event))  return true;
             else { return false; } }
             

            @Override
            public boolean dispatchTouchEvent(MotionEvent event) {
                super.dispatchTouchEvent(event);
                return gestureDetector.onTouchEvent(event);
            }  
        }

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3489
  • Respect: +507
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re:ragazzi problema viewflipper e tabactivity :(
« Risposta #1 il: 28 Maggio 2012, 20:31:10 CEST »
+1
Ma come mai non usi un ViewPager?

Offline curciolab

  • Nuovo arrivato
  • *
  • Post: 20
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Galaxy S2
  • Play Store ID:
    curciolab
  • Sistema operativo:
    Ubuntu 11.10
Re:ragazzi problema viewflipper e tabactivity :(
« Risposta #2 il: 29 Maggio 2012, 01:32:45 CEST »
0
Grazie mille ho risolto se volessi vedere il mio risultato basta che scarichi l' app :) grazie ancora..