2016-12-06 7 views
0

AppCode может генерировать геттер код вроде этого:Как пользовательские добытчика шаблоны в AppCode

- (UIView *)leftAnchorView { 
    return _leftAnchorView; 
}  

В Настройках -> Редактор -> Файл и шаблоны кода -> вкладка Код, я нашел шаблоны геттер

#if ($IVAR_IS_AVAILABLE == "true") 
return $IVAR;#else 
return $DEFAULT_RETURN_VALUE;#end 

Таким образом, я могу изменить шаблоны, как это:

#if ($IVAR_IS_AVAILABLE == "true") 
if(!$IVAR){ 
    $CUSTOM_CODE 
} 
return $IVAR;#else 
return $DEFAULT_RETURN_VALUE;#end 

в результате

- (UIView *)leftAnchorView { 
    if(!_leftAnchorView){ 
    } 
    return _leftAnchorView; 
} 

Теперь моя цель

- (UIView *)leftAnchorView { 
    if(!_leftAnchorView){ 
     _leftAnchorView = [UIView new]; 
    } 
    return _leftAnchorView; 
} 

Может кто-нибудь подскажите, как изменить шаблоны кода для того чтобы достигнуть своей цели? Благодаря!

ответ

1

В нижнем правом углу окна «Шаблоны файлов и кодов» имеется описание различных переменных в конкретном шаблоне. Таким образом, вам нужно использовать переменную $RETURN_TYPE, которая содержит тип. Но тип содержит *, который вам не нужен. В шаблонах Velocity вы можете использовать функции Java String, поэтому окончательный шаблон будет

#if ($IVAR_IS_AVAILABLE == "true") 
if(!$IVAR){ 
    $IVAR = [$RETURN_TYPE.replace("*"," ") new]; 
} 
return $IVAR;#else 
return $DEFAULT_RETURN_VALUE;#end 
Смежные вопросы