2012-11-25 20 views
5

まあ私はpagertitlestripに行くことにしました。私は、使用しているサポートライブラリにpagertabstripが含まれていないと仮定しています。私はすべてが正しく更新されたと思ったので、これを修正する方法がわかりません。 編集:これはもう存在しませんか? PagerTabStripをPagerTitleStripに変更すると、すべて動作しますが、PagerTabStripを使用したかったため、タイトルとやりとりできません。PageTabStripクラスが見つかりません例外

私は自分の問題の根本を見つけるために基本に戻ってきました。私はABSを輸入した新しいプロジェクトを開始しました。私は非常に単純なpagerAdapterと簡単な断片をセットアップしました。私はコモンズの本の例を使っていますが、私はまだ同じエラーが発生しています。クラスが見つかりませんでした例外。 PagerTabStripが見つかりません。 Stack postedは毎回同じエラーになります。私がPagerTabStripを削除すると、すべて正常に動作します。

XML

<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 

どのようなヘルプもすばらしいでしょう。私はこの問題を解決するためにどこを探すべきか分からない。私はPagerTabStripがサポートライブラリで見つからないようにする非常に基本的なものを見逃してしまったような気がします。

+0

を認識することにした後

あなたはこれを任意の解決策を見つけたことがありますか?私は現在同じ問題を抱えています。 –

答えて

9

これは、サポートライブラリの古いバージョンを持つ基本的なactionbarsherlockライブラリが原因で終了しました。

eclipseから、私はactionbarsherlockライブラリプロジェクトのビルドパスからアンドロイドサポートライブラリを削除しました。

は右あなたのプロジェクトをクリックして

その後

私はここにアドバイスに従って、PagerTabStrip cannot be resolved to a type、.. "Androidのツール" の

クリック - >それその後

の "サポートライブラリを追加" android-support.jarをダウンロードします。プロジェクトに追加します。あなたの日食はPagerTabStrip

+0

これは正しいと思います。私は長い間Eclipseを使用していませんが、ABSのサポートライブラリが正しいサポートライブラリを使用できなくなっていたことがわかります。私は他のライブラリでもこの問題を抱えていましたが、これは良い解決策でした。 – doubleA

関連する問題