2016-07-26 6 views
0

Ich habe MainActivity, die zwei Registerkarten hinzufügt, nämlich "tab1", "tab2"; Diese Registerkarten sind Fragment. Tab 1 sendet Server-Anfrage und Tab 2 sendet auch Server-Anfrage, wenn ich öffnen MainActivity, Server-Anfrage von beiden Registerkarten an den Server gesendet werden. Was ich will ist: Wenn Tab1 sichtbar wird, sollte Tab1 eine Serveranfrage senden, und wenn Tab2 sichtbar wird, wird Tab2 seine Serveranfrage senden. Wie kann ich das machen?Wie Server-Anfrage von einzelnen Registerkarte in Android senden?

MainActivity:

m_TabLayout = (TabLayout) findViewById(R.id.tab_layout);// finding Id of tablayout 
m_ViewPager = (ViewPager) findViewById(R.id.pager);//finding Id of ViewPager 
m_TabLayout.addTab(m_TabLayout.newTab().setText("Deals"));// add deal listin tab 
m_TabLayout.addTab(m_TabLayout.newTab().setText("Stories")); 
m_TabLayout.setTabGravity(TabLayout.GRAVITY_FILL);// setting Gravity of Tab 


CDealMainListingPager m_oDealMainScreenPager = new CDealMainListingPager(getSupportFragmentManager(), m_TabLayout.getTabCount()); 
m_ViewPager.setAdapter(m_oDealMainScreenPager);// adiing adapter to ViewPager 
m_ViewPager.addOnPageChangeListener(new TabLayout.TabLayoutOnPageChangeListener(m_TabLayout));// performing action of page changing 
m_TabLayout.setOnTabSelectedListener(new TabLayout.OnTabSelectedListener() { 
    @Override 
    public void onTabSelected(TabLayout.Tab tab) { 
     m_ViewPager.setCurrentItem(tab.getPosition()); 
    } 

    @Override 
    public void onTabUnselected(TabLayout.Tab tab) { 

    } 

    @Override 
    public void onTabReselected(TabLayout.Tab tab) { 

    } 
}); 

Antwort

0

Versuchen Sie, diese

int currentTab = 1; 

m_ViewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() { 
      @Override 
      public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { 

      } 

      @Override 
      public void onPageSelected(int position) { 
       currentTab = viewPager.getCurrentItem(); 
       if(currentTab == 1) { 
//     Tab 1 Server request 
       }else{ 
//     Tab 2 server request 
        } 
      } 

      @Override 
      public void onPageScrollStateChanged(int state) { 

      } 
     }); 
+0

aber Anfrage reuest wird von bestimmten Register gesendet werden .... also implentation insbesondere Registerkarte – Siddharth

+0

auf der ausgewählten Registerkarte Basierend können Sie senden Anfrage von dieser Seite. – Ciril

Verwandte Themen