我正试图用谷歌的分析来跟踪OnClick事件,比如:
ImageView info = (ImageView) findViewById(R.id.imageView9);
info.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v) {
Intent info = new Intent(getApplicationContext(),Odot.class);
startActivity(info);
EasyTracker easyTracker = EasyTracker.getInstance(this);
easyTracker.send(MapBuilder
.createEvent(
"UI Action", // Event category (required)
"Button Pressed", // Event action (required)
"play", // Event label
null) // Event value
.build()
);
}
});并得到错误:
The method getInstance(Context) in the type EasyTracker is not applicable for the arguments (new View.OnClickListener(){})有什么问题吗?很抱歉有这样的问题,我在学习.谢谢。
发布于 2014-01-26 18:47:26
您有一个解决方案,在问题的前面两行:getApplicationContext()。
通常,要引用内部类的父类,请使用ParentClassName.this而不是引用内部类实例的this。
发布于 2014-01-26 19:17:20
如果在内部类中使用this,则将引用该内部类(在代码new View.OnClickListener(){}中)。
如果您在一个活动中(我认为是您的情况),您应该调用ActivityClass.this。通过这种方式,您将引用该活动的实例(传递活动正在使用的上下文。)。否则,可以传递getApplicationContext()返回的上下文。
https://stackoverflow.com/questions/21367624
复制相似问题