For example
Intent intent = new Intent(this, SecondActivity.class);
eclipse error: The method setClass(Context, Class) in the type Intent is not applicable for the arguments (FirstActivity.ClickEvent, Class)
Intent intent = new Intent(FirstActivity.this, SecondActivity.class);
But that will be correct. Anybody can explain the difference between those two ? Thanks.
this
refers to your current object. In your case you must have implemented the intent in an inner class ClickEvent, and thats what it points to.
Activity.this
points to the instance of the Activity you are currently in.
When you are pointing to this inside click event, it is pointing to the click listener.
Shubhayu's answer is correct, but I just want to make clear for anyone who see this question that this
and Activity.this
is the same if you are using it directly in the activity.
Example:
@Override
protected void onResume() {
super.onResume();
Log.d("Test", this.toString());
Log.d("Test", MainActivity.this.toString());
}
Result:
D/Test: com.example.app.MainActivity@e923587
D/Test: com.example.app.MainActivity@e923587
You are intent to transfer control from one activity to another and for that u ll have to specify an event basically and hence the error. this means the entire activity and firstactivity.this means an event occurring for example a a button clicked.........
来源:https://stackoverflow.com/questions/10102151/whats-the-difference-between-this-and-activity-this