2017-05-30 11 views
0

私は、ログに記録されたユーザーのプロフィール画像を取得しようとするアプリを作ろうとしています。com.facebook.widget.ProfilePictureViewクラスを膨張させるエラー。

画像を読み込んでいるビューに移動したときにエラーが発生することがありますが、これはわかりません。

エラーは次のとおりです。

 FATAL EXCEPTION: main 
    Process: com.chinchillapps.compare, PID: 4265 
    java.lang.RuntimeException: Unable to start activity ComponentInfo{com.chinchillapps.compare/com.chinchillapps.compare.compare}: android.view.InflateException: Binary XML file line #16: Binary XML file line #16: Error inflating class android.support.design.widget.NavigationView 
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3253) 
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3349) 
    at android.app.ActivityThread.access$1100(ActivityThread.java:221) 
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1794) 
    at android.os.Handler.dispatchMessage(Handler.java:102) 
    at android.os.Looper.loop(Looper.java:158) 
    at android.app.ActivityThread.main(ActivityThread.java:7224) 
    at java.lang.reflect.Method.invoke(Native Method) 
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120) 
    Caused by: android.view.InflateException: Binary XML file line #16: Binary XML file line #16: Error inflating class android.support.design.widget.NavigationView 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:551) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:429) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:380) 
    at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:292) 
    at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140) 
    at com.chinchillapps.compare.compare.onCreate(compare.java:40) 
    at android.app.Activity.performCreate(Activity.java:6876) 
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1135) 
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3206) 
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3349)  
    at android.app.ActivityThread.access$1100(ActivityThread.java:221)  
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1794)  
    at android.os.Handler.dispatchMessage(Handler.java:102)  
    at android.os.Looper.loop(Looper.java:158)  
    at android.app.ActivityThread.main(ActivityThread.java:7224)  
    at java.lang.reflect.Method.invoke(Native Method)  
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)  
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)  
    Caused by: android.view.InflateException: Binary XML file line #16: Error inflating class android.support.design.widget.NavigationView 
    at android.view.LayoutInflater.createView(LayoutInflater.java:657) 
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:776) 
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:716) 
    at android.view.LayoutInflater.rInflate(LayoutInflater.java:847) 
    at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:810) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:527) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:429)  
    at android.view.LayoutInflater.inflate(LayoutInflater.java:380)  
    at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:292)  
    at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)  
    at com.chinchillapps.compare.compare.onCreate(compare.java:40)  
    at android.app.Activity.performCreate(Activity.java:6876)  
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1135)  
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3206)  
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3349)  
    at android.app.ActivityThread.access$1100(ActivityThread.java:221)  
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1794)  
    at android.os.Handler.dispatchMessage(Handler.java:102)  
    at android.os.Looper.loop(Looper.java:158)  
    at android.app.ActivityThread.main(ActivityThread.java:7224)  
    at java.lang.reflect.Method.invoke(Native Method)  
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)  
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)  
    Caused by: java.lang.reflect.InvocationTargetException 
    at java.lang.reflect.Constructor.newInstance(Native Method) 
    at android.view.LayoutInflater.createView(LayoutInflater.java:631) 
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:776)  
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:716)  
    at android.view.LayoutInflater.rInflate(LayoutInflater.java:847)  
    at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:810)  
    at android.view.LayoutInflater.inflate(LayoutInflater.java:527)  
    at android.view.LayoutInflater.inflate(LayoutInflater.java:429)  
    at android.view.LayoutInflater.inflate(LayoutInflater.java:380)  
    at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:292)  
    at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)  
    at com.chinchillapps.compare.compare.onCreate(compare.java:40)  
    at android.app.Activity.performCreate(Activity.java:6876)  
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1135)  
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3206)  
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3349)  
    at android.app.ActivityThread.access$1100(ActivityThread.java:221)  
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1794)  
    at android.os.Handler.dispatchMessage(Handler.java:102)  
    at android.os.Looper.loop(Looper.java:158)  
    at android.app.ActivityThread.main(ActivityThread.java:7224)  
    at java.lang.reflect.Method.invoke(Native Method)  
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)  
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)  
    Caused by: android.view.InflateException: Binary XML file line #16: Binary XML file line #16: Error inflating class com.facebook.widget.ProfilePictureView 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:551) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:429) 
    at android.support.design.internal.NavigationMenuPresenter.inflateHeaderView(NavigationMenuPresenter.java:211) 
    at android.support.design.widget.NavigationView.inflateHeaderView(NavigationView.java:269) 
    at android.support.design.widget.NavigationView.<init>(NavigationView.java:178) 
    at android.support.design.widget.NavigationView.<init>(NavigationView.java:100) 
    at java.lang.reflect.Constructor.newInstance(Native Method)  
    at android.view.LayoutInflater.createView(LayoutInflater.java:631)  
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:776)  
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:716)  
    at android.view.LayoutInflater.rInflate(LayoutInflater.java:847)  
    at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:810)  
    at android.view.LayoutInflater.inflate(LayoutInflater.java:527)  
    at android.view.LayoutInflater.inflate(LayoutInflater.java:429)  
    at android.view.LayoutInflater.inflate(LayoutInflater.java:380)  
    at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:292)  
    at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)  
    at com.chinchillapps.compare.compare.onCreate(compare.java:40)  
    at android.app.Activity.performCreate(Activity.java:6876)  
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1135)  
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3206)  
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3349)  
    at android.app.ActivityThread.access$1100(ActivityThread.java:221)  
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1794)  
    at android.os.Handler.dispatchMessage(Handler.java:102)  
    at android.os.Looper.loop(Looper.java:158)  
    at android.app.ActivityThread.main(ActivityThread.java:7224)  
    at java.lang.reflect.Method.invoke(Native Method)  
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)  
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)  
    Caused by: android.view.InflateException: Binary XML file line #16: Error inflating class com.facebook.widget.ProfilePictureView 
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:788) 
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:716) 
    at android.view.LayoutInflater.rInflate(LayoutInflater.java:847) 
    at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:810) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:527) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:429)  
    at android.support.design.internal.NavigationMenuPresenter.inflateHeaderView(NavigationMenuPresenter.java:211)  
    at android.support.design.widget.NavigationView.inflateHeaderView(NavigationView.java:269)  
    at android.support.design.widget.NavigationView.<init>(NavigationView.java:178)  
    at android.support.design.widget.NavigationView.<init>(NavigationView.java:100)  
    at java.lang.reflect.Constructor.newInstance(Native Method)  
    at android.view.LayoutInflater.createView(LayoutInflater.java:631)  
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:776)  
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:716)  
    at android.view.LayoutInflater.rInflate(LayoutInflater.java:847)  
    at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:810)  
    at android.view.LayoutInflater.inflate(LayoutInflater.java:527)  
    at android.view.LayoutInflater.inflate(LayoutInflater.java:429)  
    at android.view.LayoutInflater.inflate(LayoutInflater.java:380)  
    at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:292)  
    at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)  
    at com.chinchillapps.compare.compare.onCreate(compare.java:40)  
    at android.app.Activity.performCreate(Activity.java:6876)  
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1135)  
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3206)  
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3349)  
    at android.app.ActivityThread.access$1100(ActivityThread.java:221)  
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1794)  
    at android.os.Handler.dispatchMessage(Handler.java:102)  
    at android.os.Looper.loop(Looper.java:158)  
    at android.app.ActivityThread.main(ActivityThread.java:7224)  
    at java.lang.reflect.Method.invoke(Native Method)  
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)  
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)  
    Caused by: java.lang.ClassNotFoundException: Didn't find class "com.facebook.widget.ProfilePictureView" on path: DexPathList[[zip file "/data/app/com.chinchillapps.compare-2/base.apk", zip file "/data/app/com.chinchillapps.compare-2/split_lib_dependencies_apk.apk", zip file "/data/ 

エラーが私がここで使用しようとしているProfilePictureViewクラスからのものであると思わ:

ProfilePictureView currentUser; 
    currentUser = (ProfilePictureView) findViewById(R.id.currentUser); 
    currentUser.setProfileId(Profile.getCurrentProfile().getId()); 

私は(私はAndroidStudioを使用していたクラスをインポートしています) と私はエラーの原因になる可能性が最後のものは、XMLは、ここにある:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:app="http://schemas.android.com/apk/res-auto" 
android:layout_width="match_parent" 
android:layout_height="@dimen/nav_header_height" 
xmlns:facebook="http://schemas.android.com/tools" 
android:background="@drawable/side_nav_bar" 
android:gravity="bottom" 
android:orientation="vertical" 
android:paddingBottom="@dimen/activity_vertical_margin" 
android:paddingLeft="@dimen/activity_horizontal_margin" 
android:paddingRight="@dimen/activity_horizontal_margin" 
android:paddingTop="@dimen/activity_vertical_margin" 
android:theme="@style/ThemeOverlay.AppCompat.Dark"> 

<com.facebook.widget.ProfilePictureView 
    android:id="@+id/currentUser" 
    android:layout_width="68dp" 
    android:layout_height="wrap_content" 
    android:paddingTop="8dp" 
    android:gravity="center_horizontal" 
    facebook:preset_size="small" /> 
<TextView 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:paddingTop="@dimen/nav_header_vertical_spacing" 
    android:text="Android Studio" 
    android:textAppearance="@style/TextAppearance.AppCompat.Body1" /> 

<TextView 
    android:id="@+id/textView" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="[email protected]" /> 

</LinearLayout> 

私はまだインターネット上でエラーを探していますが、私は偉大なAndroidの世界の初心者ですので、誰かが私を助けることができたらそれは素晴らしいことでしょう!

ありがとうございます!

答えて

0

facebook sdk 4.0.1では、ProfilePictureViewクラスはcom.facebook.widgetパッケージ内にありません。 com.facebook.login.widgetパッケージの中にあります。したがって、XML宣言は次のようになります。

<com.facebook.login.widget.ProfilePictureView 
    android:id="@+id/currentUser" 
    android:layout_width="68dp" 
    android:layout_height="wrap_content" 
    android:paddingTop="8dp" 
    android:gravity="center_horizontal" 
    facebook:preset_size="small"/> 
関連する問題