java - What is the difference between `this` and `ActivityClass.this` in android intent constructor? -


this question has answer here:

what difference between this , activityclass.this when pass in intent constructor

for example given 2 activities: activityone , activitytwo

the following doesn't work (compile error)

        @override         public void onclick(view v) {             intent intent = null;             log.i(tag, this.tostring());             log.i(tag, activityone.this.tostring());             intent = new intent(this, activitytwo.class);             startactivity(intent);         } 

while works

        @override         public void onclick(view v) {             intent intent = null;             log.i(tag, this.tostring());             log.i(tag, activityone.this.tostring());             intent = new intent(activityonethis, activitytwo.class);             startactivity(intent);         } 

the logging info log

activitylab.activityone$1@41fc5818 activitylab.activityone@41fa2948 

although different, common answer passing activity using this, not why running problem

i'm assuming onclick method inside anonymous class instance (though didn't include full code, activityone$1 output see when printing this how anonymous inner classes displayed), refers anonymous inner class instance, , not activityone instance containing instance.

activityone.this returns reference containing activityone instance, supposed pass intent constructor.


Comments

Popular posts from this blog

c - Bitwise operation with (signed) enum value -

xslt - Unnest parent nodes by child node -

YouTubePlayerFragment cannot be cast to android.support.v4.app.Fragment -