आपको जो भी चाहते हैं उसे लागू करने के लिए आपको सही पुस्तकालयों की आवश्यकता है।
असल में, ViewPager
लाइब्रेरी आपके से क्या गुम है। मेरे सुझाव:
1. ActionBarSherlock
यह इतना मृत आसान है कि मैं यह नहीं समझा जाएगा के साथ काम करने के लिए।
2. ViewPagerExtensions
आप इसे here पा सकते हैं। ज़िप फ़ाइलों को डाउनलोड करें और इससे एक नई परियोजना बनाएं।
मैं केवल के रूप में स्थिर काम करने के लिए इस सेट कर सकते हैं, मैं इस तरह Android Market एप्लिकेशन (Swype आंदोलन) बनाने के लिए चाहते हैं।
इस परियोजना से com.astuetz.viewpager.extensions.SwipeyTabsView
लागू करें। आसान-से-पालन उदाहरण हैं। यह वही करता है जो आप चाहते हैं। यहां से चुनने के लिए अन्य टैब शैलियों भी हैं (आईसीएस के साथ आने वाले नए लोग टैब सहित)। इसके अलावा, इसे अपनी ऐप पहचान से मेल खाने के लिए शैली बनाना बहुत आसान है।
3. FragmentPagerAdapter
अंत में, समर्थन पुस्तकालय (v4) से उस वर्ग।
शुभकामनाएं, और मुझसे पूछने के लिए स्वतंत्र रहें कि आपको और सहायता चाहिए या नहीं।
आप आप उपयोग कर रहे हैं कि मैं क्या सुझाव दिया FragmentPagerAdapter
में instantiateItem
ओवरराइड करने के लिए जरूरत नहीं है। आपको केवल
FragmentManager
के साथ एक कन्स्ट्रक्टर प्रदान करें और सुपर कार्यान्वयन को कॉल करें;
- अवहेलना
getCount
अपने पेजर में टुकड़े की संख्या लौटने के लिए, और
getItem
, जो है कि तुम क्या निर्माण के लिए अपने टुकड़े वापस जाने के लिए इस्तेमाल करेंगे करने के लिए।
यह मेरे यहां मौजूद कोड का एक उदाहरण है (एक पूर्ण कामकाजी, उत्पादन उदाहरण)। यह गतिविधि कि पेजर लागू करता है करने के लिए एक आंतरिक वर्ग है:
static class MyFragmentPagerAdapter extends FragmentPagerAdapter {
public MyFragmentPagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public int getCount() {
return 2;
}
@Override
public Fragment getItem(int position) {
Fragment f;
switch(position) {
case 0:
f= new ItemSalesDataFragment();
break;
case 1:
f= new DepartmentChooserFragment();
break;
default:
throw new IllegalArgumentException("not this many fragments: " + position);
}
return f;
}
}
आप देख सकते हैं, इस पेजर दो 'पृष्ठ', बाईं प्रदर्शित करता है बिक्री डेटा संभालती है।सही व्यक्ति उपयोगकर्ता को कौन सा विभाग चुनने की अनुमति देता है। वे getItem
विधि में वापस आ गए हैं। उचित टुकड़े (आप जो भी टुकड़े पहले से हैं, उसका उपयोग कर सकते हैं, कोई संशोधन आवश्यक नहीं है)।
जैसी उम्मीद थी, आप 1 से एक साथ यह सब में शामिल होने) एक वस्तु है कि दृष्टांत MyFragmentPagerAdapter
बनाने, और 2) अपने ViewPager
वस्तु के लिए एडाप्टर की स्थापना उस वर्ग है कि आप बस instantiated किया जाना है। जैसा कि आप देख सकते हैं, इसकी getItem
विधि पेजर को आपके सभी आवश्यक टुकड़ों को "दे" देगी। उदाहरण:
mFragmentPagerAdapter = new MyFragmentPagerAdapter(getSupportFragmentManager());
mViewPager.setAdapter(mFragmentPagerAdapter);
बेशक , वहाँ अन्य बातों के लिए खुद को टैब बटन बनाने और पार संवाद करने के लिए यह सब में शामिल होने की तरह है, ऐसा करने के लिए कर रहे हैं। मैं आपको ViewPagerExtensions ज़िप फ़ाइल में प्रदान किए गए उदाहरणों को देखने का सुझाव देता हूं जिन्हें आप गिटहब से डाउनलोड करते हैं। यह सिर्फ आपकी टिप्पणी में प्रश्न का उत्तर है। जैसा कि आप देख सकते हैं, यह पुस्तकालय का उपयोग करके इतना कोड नहीं है।
यदि आपको कोई अपवाद फेंक दिया जा रहा है तो आपको उस कोड को पोस्ट करना होगा जिसमें आपको परेशानी हो रही है और आपके लॉगकाट को पोस्ट करना होगा। यदि आप 'Fragments' के बीच स्वाइप करना चाहते हैं तो आपको' ViewPager' का उपयोग करने की आवश्यकता है। – adneal
https://github.com/JakeWharton/ActionBarSherlock/blob/master/samples/fragments/src/com/actionbarsherlock/sample/fragments/FragmentTabsPager.java –