В процессе использования Android Studio я обнаружил, что некоторые из включенных плагинов не могут удовлетворить фактические потребности проекта, поэтому я сам начал разрабатывать соответствующие плагины. Ниже приведена запись моего процесса плагина разработки и будет продолжать делиться им с вами.
Поделиться 1: Создать меню «Создать проект правой кнопкой мыши»
1. Следуйте по мастеру проекта, чтобы создать демонстрационный проект шаг за шагом, и я больше не буду его представлять. Вы можете обратиться к этой статье //www.vevb.com/article/135535.htm
2. Создать действие, вы увидите в файле конфигурации плагина
<Action id = "FirstAction" text = "FirstAction" description = "Щелкните правой кнопкой мыши"> <add-to-группа group-id = "projectViewPopupMenu" Anchor = "после" Oftival-to-Action = "replyinpath"/> </action>
3. После запуска IDE откроет еще одну IDE (завернутый контейнером, похожим на Genymotion). Это зависит от того, является ли эффект очень знаком. Да, это обычно используемое меню проекта правой кнопкой мыши:
4. Динамически управлять скрытым отображением действия в соответствии с запускаемым типом файла
@Override public void update (anactionEvent event) {// show скрыть это действие string extension = getFileExtension (event.getDataContext ()); this.getTemplatePresentation (). setEnabled (endension! = null && "jar" .equals (endension)); }Полный код:
Импорт com.intellij.openapi.actionsystem.*; Import com.intellij.openapi.project.project; Импорт com.intellij.openapi.ui.messages; Import com.intellij.openapi.vfs.virtualfile; /*** Создано ABC 16/8/17. */ public Class FirstAction расширяет anaction {private Project Mproject; @Override public void actionperformed (anactionEvent event) {mProject = event.getData (platformDatakeys.project); DataContext dataContext = event.getDataContext (); if ("jar" .equals (getFileExtension (dataContext)))) {// Защита следующей обработки на основе расширения // Получить выбранную файл VirtualFile file = DataQueys.virtual_file.getData (event.getDataContext ()); if (file! = null) {сообщения.showmessageDialog (mProject, file.getName (), «SELECT File», Messages.getInformationIcon ()); }}} @Override public void update (anactionEvent event) {// Перед отображением действия определите, отображается ли это действие на основе выбранного расширения файла. String extension = getFileExtension (event.getDataContext ()); this.getTemplatePresentation (). setEnabled (endension! = null && "jar" .equals (endension)); } public Static String getFileExtension (dataContext DataContext) {virtualFile file = dataugeys.virtual_file.getData (dataContext); return file == null? null: file.getextension (); }}Выше всего содержание этой статьи. Я надеюсь, что это будет полезно для каждого обучения. Я также надеюсь, что все будут поддерживать wulin.com больше