2017-04-11 77 views
0

我在Android Studio中構建的Android應用程序的某個活動中擁有Facebook Share按鈕。在構建類型調試,它工作得很好。但是,當更改爲發佈時,生成失敗並出現以下錯誤。意外投到ShareButton [WrongViewCast]發佈錯誤構建Android Studio

Error:(190) Error: Unexpected cast to ShareButton: layout tag was ImageView [WrongViewCast] 

這隻發生在FB ShareButton中。

誰能幫助?

Activity.xml

<RelativeLayout 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:id="@+id/activity_news" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:paddingBottom="@dimen/activity_vertical_margin" 
    android:background="@color/colorWhite" 
    tools:context="com.*****.*****.News"> 

    <ImageView 
     android:id="@+id/imgMainImage" 
     android:layout_width="70dp" 
     android:layout_height="250dp" 
     android:layout_alignParentEnd="true" 
     android:layout_alignParentStart="true" 
     android:layout_alignParentTop="true" 
     android:maxWidth="70dp" 
     android:scaleType="centerCrop" /> 

    <ImageView 
     android:id="@+id/imgUserImage" 
     android:layout_width="50dp" 
     android:layout_height="50dp" 
     android:layout_alignParentEnd="true" 
     android:layout_alignParentTop="true" 
     android:layout_marginRight="15dp" 
     android:layout_marginTop="15dp" 
     android:foregroundGravity="center" 
     app:srcCompat="@drawable/logo_app" /> 

    <TextView 
     android:id="@+id/lblChangePasswordTitle" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignBottom="@+id/imgMainImage" 
     android:layout_alignParentStart="true" 
     android:background="@drawable/news_headline_tint" 
     android:paddingBottom="10dp" 
     android:paddingLeft="20dp" 
     android:paddingRight="20dp" 
     android:paddingTop="10dp" 
     android:textColor="@android:color/background_light" 
     android:textSize="20sp" 
     android:textStyle="normal|bold" 
     android:layout_alignParentEnd="true" /> 

    <Button 
     android:id="@+id/btnLogout" 
     android:layout_width="wrap_content" 
     android:layout_height="20dp" 
     android:layout_alignParentBottom="true" 
     android:layout_centerHorizontal="true" 
     android:background="@android:color/transparent" 
     android:text="Logout" 
     android:onClick="logOut" 
     android:textColor="@color/colorPrimaryDark" 
     android:textStyle="bold" /> 

    <ScrollView 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_above="@+id/btnLogout" 
     android:layout_below="@+id/imgMainImage" 
     android:layout_marginBottom="10dp" 
     android:layout_marginTop="10dp" 
     android:layout_marginLeft="15dp" 
     android:layout_marginRight="15dp" 
     android:id="@+id/scrollView2"> 

     <TextView 
      android:id="@+id/lblFullText" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_above="@+id/btnLogout" 
      android:layout_alignParentEnd="true" 
      android:layout_alignParentStart="true" 
      android:layout_below="@+id/imgMainImage" 
      android:text="TextView" /> 
    </ScrollView> 

    <ImageView 
     android:id="@+id/imgFBShare" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_above="@+id/lblChangePasswordTitle" 
     android:layout_alignEnd="@+id/scrollView2" 
     android:layout_marginBottom="12dp" 
     android:onClick="shareFB" 
     app:srcCompat="@drawable/com_facebook_button_icon_blue" /> 

</RelativeLayout> 

這是最後的ImageView的。

+0

張貼您的xml請 –

+0

通過添加XML來編輯該問題 –

回答

1

您的XML更改來自:

<ImageView 
     android:id="@+id/imgFBShare" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_above="@+id/lblChangePasswordTitle" 
     android:layout_alignEnd="@+id/scrollView2" 
     android:layout_marginBottom="12dp" 
     android:onClick="shareFB" 
     app:srcCompat="@drawable/com_facebook_button_icon_blue" /> 

到:

<com.facebook.share.widget.ShareButton 
     android:id="@+id/imgFBShare" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_above="@+id/lblChangePasswordTitle" 
     android:layout_alignEnd="@+id/scrollView2" 
     android:layout_marginBottom="12dp" 
     android:onClick="shareFB" 
     app:srcCompat="@drawable/com_facebook_button_icon_blue" /> 

您遇到的問題是,你正在試圖獲得來自ShareButton的功能,你就鑄塑例如,但不幸的是,在您的XML中,您指向的是Facebook提供的ImageView而不是ShareButton類。

+0

立即嘗試。稍後會更新... –

+0

謝謝!錯誤消失了。現在我只需運行它即可查看輸出結果。 –

+0

加1爲具體,快速和說明。謝謝! –