android.widget.imagebutton 无法转换为 android.widget.button 消息

标签 android button compiler-errors android-activity classcastexception

您好,我收到此消息 android.widget.imagebutton 无法转换为 android.widget.button (请参阅附件图片以了解 logcat 错误),我不明白为什么?因为我的代码似乎是正确的。

代码:

ImageButton Calendar = (ImageButton) findViewById (R.id.Calendar);
Calendar.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v) {
        // TODO Auto-generated method stub

        Intent OpenCalendarbtn = new Intent (Menu.this, DisplayCalendar.class);
        startActivity (OpenCalendarbtn);
    }
});

enter image description here

完整布局 xml 文件:

`

<ImageButton
    android:id="@+id/Read"
    android:layout_width="100dp"
    android:layout_height="100dp"
    android:layout_alignParentRight="true"
    android:layout_alignTop="@+id/Write"
    android:layout_marginRight="31dp"
    android:src="@drawable/read" />

<ImageView
    android:id="@+id/AppLogo"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true"
    android:src="@drawable/logo" />

<ImageButton
    android:id="@+id/Write"
    android:layout_width="100dp"
    android:layout_height="100dp"
    android:layout_alignParentLeft="true"
    android:layout_below="@+id/AppLogo"
    android:layout_marginLeft="35dp"
    android:layout_marginTop="14dp"
    android:src="@drawable/write" />

<ImageButton
    android:id="@+id/Calendar"
    android:layout_width="100dp"
    android:layout_height="100dp"
    android:layout_alignLeft="@+id/Write"
    android:layout_below="@+id/Write"
    android:layout_marginTop="20dp"
    android:src="@drawable/calendar/>

`

最佳答案

确保您已使用<ImageButton>标签而不是 <Button>布局资源文件中的标记。 这可能是错误的原因。

关于android.widget.imagebutton 无法转换为 android.widget.button 消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22424815/

相关文章:

c - 如何更改按钮上的光标?

android - 如果我有许多具有不同 Url 的按钮,如何在 webview 中设置 Url?

compilation - 编译MINIX内核

android - 如何创建一个覆盖层来阻止其下方 UI 的触摸事件?

android - E/VdcInflateDelegate:org.xmlpull.v1.XmlPullParserException:二进制XML文件行#17 <vector>标签需要viewportWidth> 0

html - 重置按钮的作用类似于提交按钮

ios - 我如何解决 IOS 版本 React Native 应用程序中的 EXC_CRASH (SIGABRT) 问题?

java - 无法编译简单的JFACE程序; java.lang.NoClassDefFoundError

android - com.google.firebase.database.DatabaseException : Calls to setPersistenceEnabled() must be made before any other usage of FirebaseDatabase instance

android - 在 Android 中录制视频时是否可以从外部麦克风录制?