14
私は匿名の内部クラスの中にあり、外部クラスのインスタンスを参照したいと考えています。 Javaでは、あいまいさを解決するために、クラス名の前に.this
を使用して参照することができます。のような:MainActivity.this
。私はコトリンで同じことをどうやって達成することができますか?なぜなら、コンパイラは'expression 'this' cannot be a selector(occur after a dot)'
という文句をしているからです。ありがとう!Kotlinで外部クラスのインスタンスを参照する方法は?
別の「トリック」があります。 'val a:MainActivity ='という正しい型の変数を記述し、スマートコンプリート(Ctrl + Shift + Space)を呼び出します。 IntelliJは 'this @ MainActivity'という表現を提案します。 –
誰かが尋ねるように感じる場合のフォローアップの質問:なぜこれはJavaでは同じではありませんか?これは他のどこにも見られなかった非常に奇妙な構文です。 –