gpt4 book ai didi

java - android.widget.Button 无法转换为 android.view.View$OnKeyListener

转载 作者:行者123 更新时间:2023-12-01 23:43:22 25 4
gpt4 key购买 nike

有人可以解释一下为什么我会收到此错误吗?

Java.lang.ClassCastException: android.widget.Button cannot be cast to     android.view.View$OnKeyListener

下面是java代码。我正在尝试遵循教程,但无法开始。 RAZR 模拟器仅显示不幸的是 JimYamba 停止工作。该错误来自 Eclipse LogCat。

package com.example.jimyamba;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.View.OnClickListener;
import android.view.View;
import android.view.View.OnKeyListener;
import android.widget.Button;
import android.widget.EditText;
import android.util.Log;;

public class MainActivity extends Activity implements OnClickListener{

Button buttonUpdate;
EditText editStatus;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.status);

buttonUpdate = (Button)findViewById(R.id.button_update);
editStatus = (EditText) findViewById(R.id.edit_status);

buttonUpdate.setOnKeyListener((OnKeyListener) this.buttonUpdate);
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}

public void onClick(View v){
String statusText = editStatus.getText().toString();
Log.d("StatusActivity","onClicked with text:" + statusText);
}

}

最佳答案

错误出现在 buttonUpdate.setOnKeyListener((OnKeyListener) this.buttonUpdate); 行中。正如错误所示,您无法将按钮强制转换为 OnKeyListener。显式转换需要通过类层次结构建立关系 - Button 和 OnKeyListener 不相关(OnKeyListener 是一个接口(interface))。

如果您想维护您的设置,您可以创建一个扩展 Button 并实现 OnKeyListener 的类。您必须编辑 xml 才能用自定义 View 代替按钮。

关于java - android.widget.Button 无法转换为 android.view.View$OnKeyListener,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17558122/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com