Search code examples
androidandroid-studiolive-templates

Get first argument in live-template


Recently i was creating my own live-template, i was customizing for loop, here is how default for loop is given in live-template.

for(int $INDEX$ = 0; $INDEX$ < $LIMIT$; $INDEX$++) {
  $END$
}

but i want my method's first argument inplace of $LIMIT$, how can i do that?

public void getList(ArrayList<String> list)
{

}

then my for loop shoulde be

for(int i = 0; i < list.size; i++) {
  ...
}

I have seen template of logm, but it is printing all arguments of method

groovyScript("'\"' + _1.collect { it + ' = [\" + ' + it + ' + \"]'}.join(', ') + '\"'", methodParameters())

Solution

  • You can add the following live template:

    for(int $INDEX$ = 0; $INDEX$ < $VAR$.size(); $INDEX$++){
        $END$
    }
    

    Then go to right button "Edit variables" and put the following predefined methods in the expressions fields:

    Edit variables

    You can find all predefined methods in Jetbrains documentation