Java 图像按钮事件不工作

Java 图像按钮事件不工作,java,android,Java,Android,我已经创建了一个简单的应用程序,其中有一个图像按钮 我想在点击图像按钮后干杯 我的问题是,我可以看到图像按钮,但当点击图像按钮时,什么都没有发生。我找不到该代码的任何问题。 这是我的密码 这是我的xml文件 content_main.xml <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xm

我已经创建了一个简单的应用程序,其中有一个图像按钮

我想在点击图像按钮后干杯

我的问题是,我可以看到图像按钮,但当点击图像按钮时,什么都没有发生。我找不到该代码的任何问题。 这是我的密码

这是我的xml文件

content_main.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">

    <ImageButton
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/imageButton"
        android:layout_centerVertical="true"
        android:layout_centerInParent="true"
        android:src="@drawable/myimage"/>

</RelativeLayout>

我在OnClicklisteners中使用上下文的函数方面遇到了很多问题。请尝试为toast创建一个方法,然后从clicklistener调用它,如下所示:

私有void callToast(){

在此处插入您的函数 }

setOnClicklistener(新的OnClicklistener){

callToast() {

它可以工作(我将您的代码粘贴到我的项目中),也许可以尝试清除您的项目。

添加到xml:

<ImageButton
android:clickable="true" />

您应该先调试自己

你可以用这种方式

将其添加到Xml中

 <ImageButton
    android:clickable="true"
    android:onClick="myClick"
    />

Clean Rebuild Run

我在代码中也找不到任何错误。我建议您尝试编写
ContentMain。这是
而不是
getApplicationContext()
Toast.makeText
行中查看它是否有任何区别。您没有收到任何错误,对吗?另外,我会尝试
onClick
侦听器中的
log
,查看它是否输入了该函数:
log.I(“Yooo”,“我在这里”)
设置一些断点并调试代码。类内方法与匿名类相比,这并不重要。代码没有错误,一切都很好。如果你有足够的代表性,你可以将问题标记为无法重现,但这是一个非常低质量的答案。我已上载了包。请解决它,你可以如果要在Java代码中覆盖onClick,请从XML中删除它。我已经上传了工作文件。有人能解决我的问题吗。。
implements View.OnClickListener

@Override
public void onCreate(Bundle savedInstanceState) {
    ImageButton imgButton =(ImageButton)findViewById(R.id.imageButton);
    imgButton.setOnClickListener(this);
}

@Override
public void onClick(View v) {
    switch (v.getId()) {
        case R.id.imageButton:
            Toast.makeText(getApplicationContext(),"You download is resumed",Toast.LENGTH_LONG).show();
            break;
    }
}
 <ImageButton
    android:clickable="true"
    android:onClick="myClick"
    />
public void myClick(View v)
{
 Toast.makeText(ContentMain.this,"You download is resumed",Toast.LENGTH_LONG).show();
}