我想拨打onClickListener()
但是有问题
Cannot make a static reference to the non-static method setOnClickListener(View.OnClickListener) from the type View
我的相关代码:
Intent intent = getIntent();
final String editTextStr = intent.getExtras().getString("url");
ImageView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Uri uri = Uri.parse(putExtra(editTextStr));
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);
}
});
请帮助我
答案 0 :(得分:1)
ImageView是一个班级。通过调用className上的setOnClickListener方法,您需要调用静态方法,但实际上它不是静态方法。
final ImageView imageView = (ImageView)findViewById(R.id.<ID in you Layout XML file>);
imageView.setOnClickListener(....);
答案 1 :(得分:0)
ImageView是一个类。通过在类上调用setOnClickListener方法,您将对该类的方法进行静态引用。但是setOnClickListener方法未定义为静态。
您需要在该类的对象上设置单击侦听器。例如,
ImageView myImageView = (ImageView) findViewById(R.id.myImageView);
myImageView.setOnClickListener(...);
答案 2 :(得分:0)
您必须在活动的特定实例上调用onClickListener。
ImageView image = (ImageView) findViewById(R.id.yourref);
image.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Uri uri = Uri.parse(putExtra(editTextStr));
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);
}
});