Intellij Ideaでpsfs
と入力してから押す Ctrl+J IDEはダイアログを表示していました:
そして、私が押すと Enter 私は得る
私は自分の出力をカスタマイズできる場所を知っています
しかし、私は自分のライブテンプレートをどのように書くことができるのかドキュメントはできません。
最後に私は次の結果を取得したい:
psfst
->を押します Ctrl+J ->プレス Enterpublic static final String TAG = <currentClassName>.class.getSimpleName();
クラスを記録する習慣があるので、とても役に立ちます。
解決策を見つける
1)プレーングループに新しいライブテンプレートを作成する
2)テンプレートテキスト:
private static final String TAG = $CLASS_NAME$.class.getSimpleName();
)使用範囲を定義します:
4)ショートカットを選択:
最後にクリック Edit variables 式の値をclassName()に変更します
クリック Ok 、 Apply、 Ok 使用します。
別の解決策は、各クラスにデフォルトのTAGを使用せず、このメソッドを使用してTAGを取得することです。
public class Utils {
public static String getTAG(Object o) {
StackTraceElement[] elements = Thread.currentThread().getStackTrace();
int position = 0;
for (int i = 0; i < elements.length; i++) {
if (elements[i].getFileName().contains(o.getClass().getSimpleName())
&& !elements[i+1].getFileName().contains(o.getClass().getSimpleName())){
position = i;
break;
}
}
StackTraceElement element = elements[position];
String className = element.getFileName().replace(".Java", "");
return "[" + className + "](" + element.getMethodName() + ":" + element.getLineNumber() + ")";
}
}
MainActivityからの呼び出し例-onResume:
Log.v(Utils.getTAG(this), "hello world");
ログ出力:
[MainActivity](onResume:79): hello world