我如何自定义使用" Surround with try / catch"时生成的代码?

时间:2016-06-02 09:03:01

标签: android android-studio intellij-idea

每个Android开发人员都陷入了下一种情况:

public void catchMeThod() {
    throwedMethod();
}

public void throwedMethod() throws IOException{
    throw new IOException("File is missing.");    
}

由于IOException已检查异常,throwedMethod迫使我们处理它。

当我在throwedMethod内移动插入符并按 Alt + Enter 时,Android Studio会为我提供一些可能的方案:

![enter image description here

默认情况下,我选择Surround with try/catch选项,Android Studio会生成下一个代码:

enter image description here

我的问题是:如何更改此触发器,以替换

e.printStackTrace() 

Log.e(getClass().getSimpleName(), "Handled exception", e);

2 个答案:

答案 0 :(得分:12)

  1. 转到Android Studio Preferences | Editor | File and Code Templates

  2. 选择Code | Catch Statement Body

  3. 替换现有模板:

    ${EXCEPTION}.printStackTrace(); 
    

    使用:

    Log.e(getClass().getSimpleName(), "Exception handled", ${EXCEPTION});
    
  4. 预览

    Custom try..catch template

    享受自定义模板:)

答案 1 :(得分:0)

这些“模板”由Postfix完成管理(首选项>编辑器>一般>后缀完成> try)。

可悲的是,这些硬编码到IDE中并且无法更改。唯一的方法是手动更换它们。

仅在当前文件中更改

cmd + R (或控制是否使用windows / linux)。

在顶部栏中输入要搜索的文本,在底栏中输入要替换的文本。然后单击全部替换。

enter image description here

无处不在

在项目视图中,右键单击应用并选择“替换路径”。填写字段并单击“查找”。

enter image description here