Context
とメソッドgetClass().getName()
を使用すると、のような完全なクラス名を表す文字列を取得できることを認識していcom.package1.package2.MainActivity
ます。
クラス名のみの最後の部分のみを取得するにはどうすればよいですか?この場合、それはMainActivity
文字列になります。
私は簡単なsplit()
方法でそれを行うことができますが、おそらくより良い方法、より信頼性の高い方法があります。
Context
とメソッドgetClass().getName()
を使用すると、のような完全なクラス名を表す文字列を取得できることを認識していcom.package1.package2.MainActivity
ます。
クラス名のみの最後の部分のみを取得するにはどうすればよいですか?この場合、それはMainActivity
文字列になります。
私は簡単なsplit()
方法でそれを行うことができますが、おそらくより良い方法、より信頼性の高い方法があります。
必要なのはこれだけです。
MainActivity.this.getClass().getSimpleName();
フルパスではなく、クラスの名前のみを取得するには、次の式を使用します。
String className = this.getLocalClassName();
//or
String className = getBaseContext().getLocalClassName();
//or
String className = getApplicationContext().getLocalClassName();
どのように実行しても、getClassの上で追加の操作を実行する必要があります。分割よりもこれをお勧めします:
String className = xxx.getClass();
int pos = className.lastIndexOf ('.') + 1;
String onlyClass = className.substring(pos);
コトリンの方法:MainActivity::class.java.simpleName