2016-11-21 12 views
1

하나의 앱을 개발 중입니다. 내 안드로이드 스튜디오 버전은 1.4입니다. 내 앱에서는 디자인 할 때 android.support.design.widget.FloatingActionButton 버튼을 추가했습니다. 그 페이스 북의 lib를 추가하기 전에 잘 작동합니다.

내가 facebook lib를 추가하면 플로트 버튼 작동이 멈추고 UI가 변경되고 다른 것은 초기화하려고 할 때 오류가 발생합니다. NullPointerException. 내 프로젝트에 페이스 북 라이브러리를 추가하면 FlaotButton UI가 바뀌었고 이렇게 보입니다.

enter image description here

그리고 내가 gradle 파일에서 facebook lib를 제거하면 다음과 같습니다. enter image description here.

미리 감사 드리며 도움을 받으실 수 있습니다.android.support.design.widget.FloatingActionButton은 프로젝트에서 Facebook 라이브러리를 추가 할 때 작동하지 않습니다.

내 응용 프로그램 수준 build.gradle 파일

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 23 
    buildToolsVersion "23.0.3" 

    defaultConfig { 
     applicationId "com.zennaxx.socialgf" 
     minSdkVersion 15 
     targetSdkVersion 23 
     versionCode 1 
     versionName "1.0" 
    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    testCompile 'junit:junit:4.12' 
    compile 'com.android.support:appcompat-v7:23.3.0' 
    compile 'com.android.support:design:23.3.0' 
    compile 'com.facebook.android:facebook-android-sdk:4.+' 
    compile 'com.squareup.picasso:picasso:2.5.2' 
} 

이 내 login_activity.xml 레이아웃 파일

<?xml version="1.0" encoding="utf-8"?> 
<android.support.design.widget.CoordinatorLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:fitsSystemWindows="true" 
    tools:context="com.zennaxx.socialgf.Login"> 

    <include layout="@layout/login_layout"/> 

    <android.support.design.widget.FloatingActionButton 
     android:id="@+id/next" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="bottom|end" 
     android:layout_margin="@dimen/fab_margin" 
     android:layout_centerHorizontal="true" 
     android:layout_centerVertical="true" 
     android:src="@android:drawable/ic_dialog_email" /> 

</android.support.design.widget.CoordinatorLayout> 

이 내 login_layout.xml입니다 파일입니다

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:background="@color/colorPrimary" 
     android:gravity="center" 
     android:orientation="vertical" 
     android:padding="@dimen/activity_horizontal_margin"> 

     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:orientation="horizontal" 
      android:gravity="center"> 

      <com.facebook.login.widget.LoginButton 
       android:id="@+id/login_button" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:visibility="gone"/> 

      <ImageView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:id="@+id/imageView2" 
       android:layout_below="@+id/userName" 
       android:layout_alignParentLeft="true" 
       android:layout_alignParentStart="true" 
       android:layout_marginTop="41dp" /> 

      <TextView 
       android:id="@+id/userName" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:text="New Text" 
       android:textSize="25dp" 
       android:layout_centerVertical="true" 
       android:layout_alignParentLeft="true" 
       android:layout_alignParentStart="true" 
       android:visibility="gone"/> 

      <ImageButton 
       android:id="@+id/imgFacebook" 
       android:layout_width="50dp" 
       android:layout_height="50dp" 
       android:gravity="center" 
       android:onClick="onClick" 
       android:layout_marginRight="@dimen/right_side" 
       android:background="@drawable/ic_facebook" /> 

      <ImageButton 
       android:id="@+id/imgGoogle" 
       android:layout_width="50dp" 
       android:layout_height="50dp" 
       android:gravity="center" 
       android:background="@drawable/ic_google_plus" /> 

     </LinearLayout> 

     <ImageView 
      android:layout_width="@dimen/logo_w_h" 
      android:layout_height="@dimen/logo_w_h" 
      android:layout_gravity="center_horizontal" 
      android:layout_marginBottom="30dp" 
      android:src="@mipmap/ic_launcher" 
      android:visibility="gone"/> 

     <android.support.design.widget.TextInputLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content"> 

      <EditText 
       android:id="@+id/email" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_marginBottom="10dp" 
       android:hint="@string/hint_email" 
       android:inputType="textEmailAddress" 
       android:textColor="@android:color/white" 
       android:textColorHint="@android:color/white" /> 

     </android.support.design.widget.TextInputLayout> 

     <android.support.design.widget.TextInputLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content"> 

      <EditText 
       android:id="@+id/password" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:layout_marginBottom="10dp" 
       android:hint="@string/hint_password" 
       android:inputType="textPassword" 
       android:textColor="@android:color/white" 
       android:textColorHint="@android:color/white" /> 
     </android.support.design.widget.TextInputLayout> 

     <!-- Login Button --> 

     <Button 
      android:id="@+id/btn_login" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:layout_marginTop="20dip" 
      android:background="@color/colorAccent" 
      android:text="@string/btn_login" 
      android:textColor="@android:color/black" /> 

     <Button 
      android:id="@+id/btn_reset_password" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:layout_marginTop="20dip" 
      android:background="@null" 
      android:text="@string/btn_forgot_password" 
      android:textAllCaps="false" 
      android:textColor="@color/colorAccent" /> 

     <!-- Link to Login Screen --> 
     <Button 
      android:id="@+id/btn_signup" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:layout_marginTop="20dip" 
      android:background="@null" 
      android:text="@string/btn_link_to_register" 
      android:textAllCaps="false" 
      android:textColor="@color/white" 
      android:textSize="15dp" /> 

     <ProgressBar 
      android:id="@+id/progressBar" 
      android:layout_width="30dp" 
      android:layout_height="30dp" 
      android:layout_gravity="center|bottom" 
      android:layout_marginBottom="20dp" 
      android:visibility="gone" /> 


    </LinearLayout> 
</LinearLayout> 
,451,515,

이 내 오류 로그

11-21 02:11:38.053 2309-2309/com.zennaxx.socialgf W/System.err: android.view.InflateException: Binary XML file line #148: Binary XML file line #148: Error inflating class android.support.design.widget.FloatingActionButton 
11-21 02:11:38.053 2309-2309/com.zennaxx.socialgf W/System.err:  at android.view.LayoutInflater.inflate(LayoutInflater.java:539) 
11-21 02:11:38.054 2309-2309/com.zennaxx.socialgf W/System.err:  at android.view.LayoutInflater.inflate(LayoutInflater.java:423) 
11-21 02:11:38.054 2309-2309/com.zennaxx.socialgf W/System.err:  at android.view.LayoutInflater.inflate(LayoutInflater.java:374) 
11-21 02:11:38.054 2309-2309/com.zennaxx.socialgf W/System.err:  at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:284) 
11-21 02:11:38.054 2309-2309/com.zennaxx.socialgf W/System.err:  at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:143) 
11-21 02:11:38.054 2309-2309/com.zennaxx.socialgf W/System.err:  at com.zennaxx.socialgf.Login.onCreate(Login.java:76) 
11-21 02:11:38.054 2309-2309/com.zennaxx.socialgf W/System.err:  at android.app.Activity.performCreate(Activity.java:6237) 
11-21 02:11:38.054 2309-2309/com.zennaxx.socialgf W/System.err:  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107) 
11-21 02:11:38.054 2309-2309/com.zennaxx.socialgf W/System.err:  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369) 
11-21 02:11:38.054 2309-2309/com.zennaxx.socialgf W/System.err:  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476) 
11-21 02:11:38.054 2309-2309/com.zennaxx.socialgf W/System.err:  at android.app.ActivityThread.-wrap11(ActivityThread.java) 
11-21 02:11:38.055 2309-2309/com.zennaxx.socialgf W/System.err:  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344) 
11-21 02:11:38.055 2309-2309/com.zennaxx.socialgf W/System.err:  at android.os.Handler.dispatchMessage(Handler.java:102) 
11-21 02:11:38.055 2309-2309/com.zennaxx.socialgf W/System.err:  at android.os.Looper.loop(Looper.java:148) 
11-21 02:11:38.055 2309-2309/com.zennaxx.socialgf W/System.err:  at android.app.ActivityThread.main(ActivityThread.java:5417) 
11-21 02:11:38.055 2309-2309/com.zennaxx.socialgf W/System.err:  at java.lang.reflect.Method.invoke(Native Method) 
11-21 02:11:38.055 2309-2309/com.zennaxx.socialgf W/System.err:  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 
11-21 02:11:38.055 2309-2309/com.zennaxx.socialgf W/System.err:  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 
11-21 02:11:38.055 2309-2309/com.zennaxx.socialgf W/System.err: Caused by: android.view.InflateException: Binary XML file line #148: Error inflating class android.support.design.widget.FloatingActionButton 
11-21 02:11:38.055 2309-2309/com.zennaxx.socialgf W/System.err:  at android.view.LayoutInflater.createView(LayoutInflater.java:645) 
11-21 02:11:38.056 2309-2309/com.zennaxx.socialgf W/System.err:  at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:764) 
11-21 02:11:38.056 2309-2309/com.zennaxx.socialgf W/System.err:  at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:704) 
11-21 02:11:38.056 2309-2309/com.zennaxx.socialgf W/System.err:  at android.view.LayoutInflater.rInflate(LayoutInflater.java:835) 
11-21 02:11:38.056 2309-2309/com.zennaxx.socialgf W/System.err:  at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798) 
11-21 02:11:38.056 2309-2309/com.zennaxx.socialgf W/System.err:  at android.view.LayoutInflater.rInflate(LayoutInflater.java:838) 
11-21 02:11:38.056 2309-2309/com.zennaxx.socialgf W/System.err:  at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798) 
11-21 02:11:38.056 2309-2309/com.zennaxx.socialgf W/System.err:  at android.view.LayoutInflater.inflate(LayoutInflater.java:515) 
11-21 02:11:38.056 2309-2309/com.zennaxx.socialgf W/System.err:  ... 17 more 
11-21 02:11:38.056 2309-2309/com.zennaxx.socialgf W/System.err: Caused by: java.lang.reflect.InvocationTargetException 
11-21 02:11:38.057 2309-2309/com.zennaxx.socialgf W/System.err:  at java.lang.reflect.Constructor.newInstance(Native Method) 
11-21 02:11:38.057 2309-2309/com.zennaxx.socialgf W/System.err:  at android.view.LayoutInflater.createView(LayoutInflater.java:619) 
11-21 02:11:38.057 2309-2309/com.zennaxx.socialgf W/System.err:  ... 24 more 
11-21 02:11:38.057 2309-2309/com.zennaxx.socialgf W/System.err: Caused by: java.lang.NoSuchMethodError: No direct method <init>(Landroid/widget/ImageView;Landroid/support/v7/widget/AppCompatDrawableManager;)V in class Landroid/support/v7/widget/AppCompatImageHelper; or its super classes (declaration of 'android.support.v7.widget.AppCompatImageHelper' appears in /data/app/com.zennaxx.socialgf-1/base.apk) 
11-21 02:11:38.057 2309-2309/com.zennaxx.socialgf W/System.err:  at android.support.design.widget.FloatingActionButton.<init>(FloatingActionButton.java:133) 
11-21 02:11:38.057 2309-2309/com.zennaxx.socialgf W/System.err:  at android.support.design.widget.FloatingActionButton.<init>(FloatingActionButton.java:110) 
11-21 02:11:38.058 2309-2309/com.zennaxx.socialgf W/System.err:  ... 26 more 
11-21 02:11:38.176 2309-2336/com.zennaxx.socialgf D/OpenGLRenderer: Use EGL_SWAP_BEHAVIOR_PRESERVED: true 
11 
+0

당신은 오류 블로그를 게시 할 수 있습니까 ?? – Ironman

+0

예외 게시 –

+0

업데이트 된 질문보기 내 질문 – Shailesh

답변

1

내가 구글 검색은 내가 직면로 나는 많은 질문에 대한 FloatingActionButton 팽창 오류를 보았다. 내 페이스 북 SDK 라이브러리 버전이 내 appcompat v7보다 크기 때문에 Facebook 라이브러리가 내 FloatActionButton과 충돌한다는 것을 알게 된 후 Facebook SDK에 대해 검색합니다.

아래와 같이 업데이트되었습니다.

1. Android SDK Build Tools.
2. Android SDK 도구.
3. Android SDK 플랫폼 - 도구.
4.Google Play 서비스.
5. Google 저장소.

이제 제 컴파일 라이브러리가 페이스 북 SDK와 같이 생겼고 프로젝트에서 잘 작동합니다.

compile 'com.android.support:appcompat-v7:24.2.0' 
compile 'com.android.support:design:24.2.0' 
compile 'com.facebook.android:facebook-android-sdk:4.+'