2012-11-25 22 views
5

वैसे मैंने केवल pagertitlestrip के साथ जाने का फैसला किया है। मुझे लगता है कि मैं जिस समर्थन लाइब्रेरी का उपयोग कर रहा हूं जिसमें पगर्टबस्ट्रिप नहीं है। मुझे यकीन नहीं है कि इसे कैसे ठीक किया जाए क्योंकि मैंने सोचा था कि मेरे पास सब कुछ ठीक से अपडेट किया गया है। संपादित करें: क्या यह अभी अस्तित्व में नहीं है? जब मैं PagerTabStrip को PagerTitleStrip में बदलता हूं, सब कुछ काम करता है लेकिन मैं उन शीर्षकों से बातचीत करने में असमर्थ हूं जिनकी अपेक्षा की जाती है क्योंकि यही कारण है कि मैं पेजरटैबस्ट्रिप का उपयोग करना चाहता था।पेजटैबस्ट्रिप क्लास नहीं मिला अपवाद

मैं अपनी समस्या की जड़ को खोजने के लिए मूल बातें वापस चला गया हूं। मैंने एबीएस आयातित एक नई परियोजना शुरू की। मैं एक बहुत ही सरल पेजर एडाप्टर और एक साधारण टुकड़ा स्थापित करता हूं। मैंने कॉमन्स बुक से एक उदाहरण इस्तेमाल किया और फिर भी मुझे एक ही त्रुटि मिल रही है। कक्षा में कोई भी अपवाद नही है। PagerTabStrip नहीं मिल रहा है। पोस्ट किया गया ढेर हर बार एक ही त्रुटि हो जाता है। अगर मैं पेजरटैबस्ट्रिप को हटा देता हूं तो सब ठीक से काम करता है।

एक्सएमएल

<android.support.v4.view.ViewPager xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/pager" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" > 

    <android.support.v4.view.PagerTabStrip 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_gravity="top" /> 

</android.support.v4.view.ViewPager> 

MainActivity

package com.example.pagetabswipe; 

import android.os.Bundle; 
import android.support.v4.view.ViewPager; 
import android.view.Menu; 

import com.actionbarsherlock.app.SherlockFragmentActivity; 

public class MainActivity extends SherlockFragmentActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 

     ViewPager pager = (ViewPager)findViewById(R.id.pager); 
     pager.setAdapter(new SampleAdapter(getSupportFragmentManager(), this)); 
    } 
} 

एडाप्टर

package com.example.pagetabswipe; 

import android.content.Context; 
import android.support.v4.app.Fragment; 
import android.support.v4.app.FragmentManager; 
import android.support.v4.app.FragmentPagerAdapter; 

public class SampleAdapter extends FragmentPagerAdapter { 
    Context ctxt=null; 
    public SampleAdapter(FragmentManager fm, Context ctxt) { 
     super(fm); 
     this.ctxt=ctxt; 
     // TODO Auto-generated constructor stub 
    } 

    @Override 
    public Fragment getItem(int position) { 
     return (EditorFragment.newInstance(position)); 
    } 

    @Override 
    public int getCount() { 
     // TODO Auto-generated method stub 
     return 10; 
    } 
    @Override 
    public String getPageTitle(int position) { 
    return(EditorFragment.getTitle(ctxt, position)); 
    } 
} 

टुकड़ा

package com.example.pagetabswipe; 

import android.content.Context; 
import android.os.Bundle; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 
import android.widget.EditText; 
import com.actionbarsherlock.app.SherlockFragment; 

public class EditorFragment extends SherlockFragment { 
    private static final String KEY_POSITION = "position"; 

    static EditorFragment newInstance(int position) { 
     EditorFragment frag = new EditorFragment(); 
     Bundle args = new Bundle(); 
     args.putInt(KEY_POSITION, position); 
     frag.setArguments(args); 
     return (frag); 
    } 

    static String getTitle(Context ctxt, int position) { 
     return (String.format(ctxt.getString(R.string.hint), position + 1)); 
    } 

    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
      Bundle savedInstanceState) { 
     View result = inflater.inflate(R.layout.editor, container, false); 
     EditText editor = (EditText) result.findViewById(R.id.editor); 
     int position = getArguments().getInt(KEY_POSITION, -1); 
     editor.setHint(getTitle(getActivity(), position)); 
     return (result); 
    } 
} 

त्रुटियां

11-24 18:01:25.630: E/AndroidRuntime(3505): FATAL EXCEPTION: main 
11-24 18:01:25.630: E/AndroidRuntime(3505): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.pagetabswipe/com.example.pagetabswipe.MainActivity}: android.view.InflateException: Binary XML file line #6: Error inflating class android.support.v4.view.PagerTabStrip 
11-24 18:01:25.630: E/AndroidRuntime(3505):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1696) 
11-24 18:01:25.630: E/AndroidRuntime(3505):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1716) 
11-24 18:01:25.630: E/AndroidRuntime(3505):  at android.app.ActivityThread.access$1500(ActivityThread.java:124) 
11-24 18:01:25.630: E/AndroidRuntime(3505):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:968) 
11-24 18:01:25.630: E/AndroidRuntime(3505):  at android.os.Handler.dispatchMessage(Handler.java:99) 
11-24 18:01:25.630: E/AndroidRuntime(3505):  at android.os.Looper.loop(Looper.java:130) 
11-24 18:01:25.630: E/AndroidRuntime(3505):  at android.app.ActivityThread.main(ActivityThread.java:3806) 
11-24 18:01:25.630: E/AndroidRuntime(3505):  at java.lang.reflect.Method.invokeNative(Native Method) 
11-24 18:01:25.630: E/AndroidRuntime(3505):  at java.lang.reflect.Method.invoke(Method.java:507) 
11-24 18:01:25.630: E/AndroidRuntime(3505):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) 
11-24 18:01:25.630: E/AndroidRuntime(3505):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597) 
11-24 18:01:25.630: E/AndroidRuntime(3505):  at dalvik.system.NativeStart.main(Native Method) 
11-24 18:01:25.630: E/AndroidRuntime(3505): Caused by: android.view.InflateException: Binary XML file line #6: Error inflating class android.support.v4.view.PagerTabStrip 
11-24 18:01:25.630: E/AndroidRuntime(3505):  at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:581) 
11-24 18:01:25.630: E/AndroidRuntime(3505):  at android.view.LayoutInflater.rInflate(LayoutInflater.java:623) 
11-24 18:01:25.630: E/AndroidRuntime(3505):  at android.view.LayoutInflater.inflate(LayoutInflater.java:408) 
11-24 18:01:25.630: E/AndroidRuntime(3505):  at android.view.LayoutInflater.inflate(LayoutInflater.java:320) 
11-24 18:01:25.630: E/AndroidRuntime(3505):  at android.view.LayoutInflater.inflate(LayoutInflater.java:276) 
11-24 18:01:25.630: E/AndroidRuntime(3505):  at com.actionbarsherlock.internal.ActionBarSherlockCompat.setContentView(ActionBarSherlockCompat.java:853) 
11-24 18:01:25.630: E/AndroidRuntime(3505):  at com.actionbarsherlock.app.SherlockFragmentActivity.setContentView(SherlockFragmentActivity.java:262) 
11-24 18:01:25.630: E/AndroidRuntime(3505):  at com.example.pagetabswipe.MainActivity.onCreate(MainActivity.java:14) 
11-24 18:01:25.630: E/AndroidRuntime(3505):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) 
11-24 18:01:25.630: E/AndroidRuntime(3505):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1660) 
11-24 18:01:25.630: E/AndroidRuntime(3505):  ... 11 more 
11-24 18:01:25.630: E/AndroidRuntime(3505): Caused by: java.lang.ClassNotFoundException: android.support.v4.view.PagerTabStrip in loader dalvik.system.PathClassLoader[/data/app/com.example.pagetabswipe-2.apk] 
11-24 18:01:25.630: E/AndroidRuntime(3505):  at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:240) 
11-24 18:01:25.630: E/AndroidRuntime(3505):  at java.lang.ClassLoader.loadClass(ClassLoader.java:551) 
11-24 18:01:25.630: E/AndroidRuntime(3505):  at java.lang.ClassLoader.loadClass(ClassLoader.java:511) 
11-24 18:01:25.630: E/AndroidRuntime(3505):  at android.view.LayoutInflater.createView(LayoutInflater.java:471) 
11-24 18:01:25.630: E/AndroidRuntime(3505):  at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:570) 
11-24 18:01:25.630: E/AndroidRuntime(3505):  ... 20 more 

कोई भी मदद शानदार होगी। मुझे यकीन नहीं है कि इस समस्या को ठीक करने के लिए कहां देखना है। मुझे लगता है कि मैंने कुछ बुनियादी बातों को याद किया है जो समर्थन लाइब्रेरी में पेजरबैबस्ट्रिप को रोकने से रोक रहा है।

+0

आप इस के लिए किसी भी समाधान मिल गया है पहचान लेंगे? मैं वर्तमान में एक ही समस्या के साथ हूँ। –

उत्तर

9

मेरे लिए, यह समर्थन लाइब्रेरी का पुराना संस्करण अंतर्निहित एक्शनबर्शरलॉक लाइब्रेरी के कारण हुआ।

ग्रहण से, मैंने एक्शनबर्सहेलॉक लाइब्रेरी प्रोजेक्ट के निर्माण पथ से एंड्रॉइड समर्थन लाइब्रेरी को हटा दिया।

तो मैं सलाह यहाँ पीछा किया, PagerTabStrip cannot be resolved to a type,

ठीक है तुम प्रोजेक्ट पर क्लिक करें .. "एंड्रॉयड उपकरण" पर

क्लिक -> यह उस के बाद

"जोड़ें समर्थन लाइब्रेरी" एंड्रॉइड-support.jar डाउनलोड करेगा। और इसे अपनी परियोजना में जोड़ें।

उसके बाद अपने ग्रहण PagerTabStrip

+0

यह सही लगता है। मैंने लंबे समय तक ग्रहण का उपयोग नहीं किया है, लेकिन यह समझ में आता है कि एबीएस में समर्थन पुस्तकालय मुझे सही समर्थन पुस्तकालय का उपयोग करने से रोक रहा था। मुझे अन्य पुस्तकालयों के साथ भी यह समस्या थी और यह एक अच्छा समाधान था। – doubleA

संबंधित मुद्दे