【问题标题】:FloatingActionButton causes Activity to crashFloatingActionButton 导致 Activity 崩溃
【发布时间】:2018-12-11 14:30:53
【问题描述】:

我有一个FloatingActionMenu,其中有两个FloatingActionButtons。我试图在单击其中一个按钮时打开一个网站,但是当homePage 运行时我的应用程序崩溃了。

这是我的java代码:

public class homePage extends AppCompatActivity {

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

    final String website = "http://www.facebook.com/slgnalinprogrammer";
    FloatingActionButton fabWebsite = findViewById(R.id.fabWebsite);

    fabWebsite.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Intent i = new Intent(Intent.ACTION_VIEW);
            i.setData(Uri.parse(website));
            startActivity(i);
        }
    });
}

我的布局 XML:

<com.getbase.floatingactionbutton.FloatingActionsMenu
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentEnd="true"
    android:layout_alignParentBottom="true"
    app:fab_addButtonColorNormal="#008577"
    app:fab_addButtonColorPressed="#00574B"
    app:fab_addButtonPlusIconColor="#ffffff"
    app:fab_labelStyle="@style/custom_fab">
    <com.getbase.floatingactionbutton.FloatingActionButton
        android:onClick="openWebsite"
        android:id="@+id/fabWebsite"
        app:fab_title="Website"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:fab_colorNormal="#008577"
        app:fab_addButtonColorPressed="#00574B"
        app:fab_icon="@drawable/websiteicon"
        app:fab_size="mini"/>
</com.getbase.floatingactionbutton.FloatingActionsMenu>

崩溃的堆栈跟踪:

java.lang.RuntimeException: Unable to start activity ComponentInfo{slgnalin.impladent/slgnalin.impladent.homePage}: java.lang.ClassCastException: com.getbase.floatingactionbutton.FloatingActionButton cannot be cast to android.support.design.widget.FloatingActionButton
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2957)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3032)
    at android.app.ActivityThread.-wrap11(Unknown Source:0)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1696)
    at android.os.Handler.dispatchMessage(Handler.java:105)
    at android.os.Looper.loop(Looper.java:164)
    at android.app.ActivityThread.main(ActivityThread.java:6944)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)
 Caused by: java.lang.ClassCastException: com.getbase.floatingactionbutton.FloatingActionButton cannot be cast to android.support.design.widget.FloatingActionButton
    at slgnalin.impladent.homePage.onCreate(homePage.java:23)
    at android.app.Activity.performCreate(Activity.java:7183)
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1220)
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2910)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3032)
    at android.app.ActivityThread.-wrap11(Unknown Source:0)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1696)
    at android.os.Handler.dispatchMessage(Handler.java:105)
    at android.os.Looper.loop(Looper.java:164)
    at android.app.ActivityThread.main(ActivityThread.java:6944)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)

【问题讨论】:

  • 先分享你的日志
  • 我的日志可以在这里找到:ufile.io/9j1jr
  • 那些日志不是我们需要的。你在找the stack trace from the crash,应该是一大段红线,以FATAL EXCEPTION开头。您可以使用日志窗口上方的过滤器使其更易于查找。
  • 另外,请edit 找到您的问题后在此处添加堆栈跟踪。请不要在站外链接。
  • 是这个吗? ufile.io/4swjk

标签: android floating-action-button


【解决方案1】:

您的布局元素是 com.getbase.floatingactionbutton.FloatingActionButton,但堆栈跟踪显示您正在尝试将其转换为 android.support.design.widget.FloatingActionButton

这表明您在Activity 中导入了错误的FloatingActionButton 类。您的导入语句应该是:

import com.getbase.floatingactionbutton.FloatingActionButton;

【讨论】:

  • 应用在加载包含浮动操作菜单的活动时仍然崩溃
猜你喜欢
  • 1970-01-01
  • 2020-02-02
  • 2018-04-15
  • 2012-03-16
  • 1970-01-01
  • 2018-01-23
  • 2020-12-02
  • 2013-11-11
  • 2011-01-24
相关资源
最近更新 更多