button.setOnTouchListener(new OnTouchListener()
{
public void onClick(View v)
{
Toast.makeText(MainActivity.this, "YOUR TEXT", 5000).show();
}
});
Eclipse声明如下:
View类型中的方法setOnTouchListener(View.OnTouchListener) 不适用于参数(new OnTouchListener(){})
进口:
import android.os.Bundle;
import android.app.Activity;
import android.content.DialogInterface.OnClickListener;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
知道怎么解决吗?
答案 0 :(得分:4)
使用此代码:
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(MainActivity.this, "YOUR TEXT", 5000).show();
}
});
答案 1 :(得分:3)
有两种解决方案:
将import android.view.View.OnTouchListener;
添加到班级的开头
将button.setOnTouchListener(new OnTouchListener()
替换为button.setOnTouchListener(new ViewOnTouchListener()
作为手性代码建议。
答案 2 :(得分:1)
检查您的代码:http://developer.android.com/reference/android/view/View.OnTouchListener.html 你应该使用onTouch方法。
答案 3 :(得分:1)
代码
public void onClick(View v)
{
Toast.makeText(MainActivity.this, "YOUR TEXT", 5000).show();
}
对onTouchListener无效。这就是你得到错误的原因,你应该使用
@Override
public void onTouch(View v, MotionEvent e)
{
Toast.makeText(MainActivity.this, "YOUR TEXT", 5000).show();
}
相反,如果你真的想要一个onTouchListener,虽然我强烈建议使用onClickListener
的Chiral Code建议答案 4 :(得分:1)
当你使用新的OnTouchListener()时,你需要在onTouch上覆盖而不是onClick或将其改为
plus.setOnClickListener(new OnClickListener()
@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, "YOUR TEXT", 5000).show();
return false;
}
答案 5 :(得分:0)
你正在为ontouchlistener添加一个onclick监听器来解决你的错误。
button.setOnTouchListener(new OnTouchListener(){
@Override
public boolean onTouch(View v, MotionEvent event) {
Toast.makeText(MainActivity.this, "YOUR TEXT", 5000).show();
return false;
}
});
答案 6 :(得分:0)
我也有这个问题,我必须做'修复项目设置',我在点击快速修复选项后找到了。然后我添加了一个.jar文件,这一切都很好。