热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

AndroidStudio第三方插件配置与应用

AndroidStudio拥有强大的功能,只是有些我们还不知道,比如说,他可以集成许多第三方插件,帮助我们打打提高开发效率。至于插件的种类繁多,需要我们在自己的开发过程中,一一检验

Android Studio拥有强大的功能,只是有些我们还不知道,比如说,他可以集成许多第三方插件,帮助我们打打提高开发效率。至于插件的种类繁多,需要我们在自己的开发过程中,一一检验哪些是我们真正需要的,哪些我们很少甚至根本用不到。话不多说,我们直接来说明Android Studio插件的配置和应用。在此我仅举几个我自己经常用到的插件,不过使用插件的过程都是大同小异,其各自的功能当然还是要自己一一实际操作之后才会更加明白。

OK,我们首先由一款应用范围极广且为众多程序员钟爱的插件——ButterKnife说起:

首先快捷键搞起,在Android Studio主版面按住Ctrl+Alt+S打开设置界面,如果你对Android Studio的常用快捷键还不够熟悉,可以看我整理的另一篇博文:http://blog.csdn.net/songkai320/article/details/51773634 。

直接上图:因为我已经安装过这个插件了,所以没有Install Plugin的绿色按钮:

《Android Studio 第三方插件配置与应用》

点击中间的 Browse Repositories.

 

《Android Studio 第三方插件配置与应用》

OK,安装好之后重启Android Studio,和一般的插件不一样,要使用ButterKnife,还需要在Module的build.gradle文件中添加如下语句:

compile 'com.jakewharton:butterknife:8.0.1'

什么,你说你没有搜索到任何第三方插件,那么请把你设置的代理先取消。改为 No proxy.

好了,我们现在可以进行编写代码了。布局文件你们就自己写吧,主要是学会这个插件的用法:

public class MainActivity extends AppCompatActivity {
@BindView(R.id.textView)
TextView textView;
@BindView(R.id.button)
Button button;
@BindView(R.id.switch1)
Switch switch1;
@BindView(R.id.toggleButton)
ToggleButton toggleButton;
@BindView(R.id.progressBar)
ProgressBar progressBar;
@BindView(R.id.seekBar)
SeekBar seekBar;
@BindView(R.id.textClock)
TextClock textClock;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ButterKnife.bind(this);
} @OnClick({R.id.textView, R.id.button, R.id.switch1, R.id.toggleButton, R.id.progressBar, R.id.seekBar, R.id.textClock})
public void onClick(View view) {
switch (view.getId()) {
case R.id.textView:
Toast.makeText(this, "view:我是textView" + view, Toast.LENGTH_SHORT).show();
break;
case R.id.button:
Toast.makeText(this, "view:button" + view, Toast.LENGTH_SHORT).show();
break;
case R.id.switch1:
Toast.makeText(this, "view:switch1" + view, Toast.LENGTH_SHORT).show();
break;
case R.id.toggleButton:
Toast.makeText(this, "view:toggleButton" + view, Toast.LENGTH_SHORT).show();
break;
case R.id.progressBar:
Toast.makeText(this, "view:progressBar" + view, Toast.LENGTH_SHORT).show();
break;
case R.id.seekBar:
Toast.makeText(this, "view:seekBar" + view, Toast.LENGTH_SHORT).show();
break;
case R.id.textClock:
Toast.makeText(this, "view:textClock" + view, Toast.LENGTH_SHORT).show();
break;
}
}
}

我不会告诉你,上述代码我写的不超过5行,全都是自动生成的。

 

自动生成方法:选中布局文件名称,此处是activity_main,右键选择Generate——>Generate ButterKnife Injections,怎么样,是不是很人性化的设计,还可以修改变量名称。

你可能还不相信我居然连5行代码都没自己写,因为他们都还有各自的监听事件。那么我要向你解释,他们的监听事件我只写了一行代码中的弹出字符。好了,其实我是用了另一个第三方插件,那就是:Android Postfix completion

可根据后缀快速完成代码。

@Override
protected void onStart() {
super.onStart();
}
@Override
protected void onResume() {
super.onResume();
}
@Override
protected void onPause() {
super.onPause();
}
@Override
protected void onStop() {
super.onStop();
}
@Override
protected void onDestroy() {
super.onDestroy();
}

这一段代码是不是排列得很整齐,完全是按照Activity的生命周期来的。其实这是使用了另一个插件:Lifecycle Sorter。它的功能是可以根据Activity或者fragment的生命周期对其生命周期方法位置进行先后排序。快捷键是Ctrl+Alt+K

 

笔者还是用了另外一个插件,那就是CodeGlance,它的最大的用途就是可用于快速定位代码.毕竟Android Studio旁边那个滑动符太小了,不方便。

最后,笔者在简单介绍另外两个插件:

AndroidAccessors

其实不用多说,它的作用就是快速为一个类里面的所有属性(当然程序员可以自己指定一些属性)快速生成get(0和set()方法。

Gsonformat

它可根据json数据快速生成java实体类,实体类需要继承JSONModel类。这个我还没有用过。读者可以自己操作一下。

 

 


推荐阅读
  • 在开发过程中,我最初也依赖于功能全面但操作繁琐的集成开发环境(IDE),如Borland Delphi 和 Microsoft Visual Studio。然而,随着对高效开发的追求,我逐渐转向了更加轻量级和灵活的工具组合。通过 CLIfe,我构建了一个高度定制化的开发环境,不仅提高了代码编写效率,还简化了项目管理流程。这一配置结合了多种强大的命令行工具和插件,使我在日常开发中能够更加得心应手。 ... [详细]
  • 本文探讨了Android系统中支持的图像格式及其在不同版本中的兼容性问题,重点涵盖了存储、HTTP传输、相机功能以及SparseArray的应用。文章详细分析了从Android 10 (API 29) 到Android 11 的存储规范变化,并讨论了这些变化对图像处理的影响。此外,还介绍了如何通过系统升级和代码优化来解决版本兼容性问题,以确保应用程序在不同Android版本中稳定运行。 ... [详细]
  • 本文深入解析了 FCEUX 源码,并详细介绍了两种制作 DEB 包的方法及其技术细节。首先,DEB 包通常由两部分组成:控制信息(位于 DEBIAN 目录)和安装内容(模拟目录)。通过解压现有的 DEB 包,可以查看其内部结构,进而理解其工作原理。具体操作包括将安装内容释放到指定目录中,以便进行进一步的修改和定制。此外,文章还探讨了如何修改现有的 DEB 包,以满足特定需求,提供了实用的步骤和技巧。 ... [详细]
  • 本指南从零开始介绍Scala编程语言的基础知识,重点讲解了Scala解释器REPL(读取-求值-打印-循环)的使用方法。REPL是Scala开发中的重要工具,能够帮助初学者快速理解和实践Scala的基本语法和特性。通过详细的示例和练习,读者将能够熟练掌握Scala的基础概念和编程技巧。 ... [详细]
  • 第六章:枚举类型与switch结构的应用分析
    第六章深入探讨了枚举类型与 `switch` 结构在编程中的应用。枚举类型(`enum`)是一种将一组相关常量组织在一起的数据类型,广泛存在于多种编程语言中。例如,在 Cocoa 框架中,处理文本对齐时常用 `NSTextAlignment` 枚举来表示不同的对齐方式。通过结合 `switch` 结构,可以更清晰、高效地实现基于枚举值的逻辑分支,提高代码的可读性和维护性。 ... [详细]
  • 作为软件工程专业的学生,我深知课堂上教师讲解速度之快,很多时候需要课后自行消化和巩固。因此,撰写这篇Java Web开发入门教程,旨在帮助初学者更好地理解和掌握基础知识。通过详细记录学习过程,希望能为更多像我一样在基础方面还有待提升的学员提供有益的参考。 ... [详细]
  • 计算机视觉领域介绍 | 自然语言驱动的跨模态行人重识别前沿技术综述(上篇)
    本文介绍了计算机视觉领域的最新进展,特别是自然语言驱动的跨模态行人重识别技术。上篇内容详细探讨了该领域的基础理论、关键技术及当前的研究热点,为读者提供了全面的概述。 ... [详细]
  • 在本文中,我们将为 HelloWorld 项目添加视图组件,以确保控制器返回的视图路径能够正确映射到指定页面。这一步骤将为后续的测试和开发奠定基础。首先,我们将介绍如何配置视图解析器,以便 SpringMVC 能够识别并渲染相应的视图文件。 ... [详细]
  • 掌握这些技巧,轻松获取超过90%的资源信息
    在数字时代,高效获取所需资源是每个人必备的技能。本文将分享一系列实用技巧,帮助读者轻松获取超过90%的网络资源信息,无论是学术资料、技术文档还是最新资讯,都能迅速找到。通过优化搜索引擎使用、利用专业数据库和社群资源等方法,读者将能够在信息海洋中游刃有余。 ... [详细]
  • 在编程笔试和面试中,全排列算法因其适中的难度而备受青睐,不仅能够考察应聘者的算法基础,还能测试其对递归和回溯的理解。本文将深入解析全排列算法的实现原理,探讨其应用场景,并提供优化建议,帮助读者更好地掌握这一重要算法。 ... [详细]
  • 本文详细介绍了在 Vue.js 前端框架中集成 vue-i18n 插件以实现多语言支持的方法。通过具体的配置步骤和示例代码,帮助开发者快速掌握如何在项目中实现国际化功能,提升用户体验。同时,文章还探讨了常见的多语言切换问题及解决方案,为开发人员提供了实用的参考。 ... [详细]
  • 在腾讯云服务器上部署Nginx的详细指南中,首先需要确保安装必要的依赖包。如果这些依赖包已安装,可直接跳过此步骤。具体命令包括 `yum -y install gcc gcc-c++ wget net-tools pcre-devel zlib-devel`。接下来,本文将详细介绍如何下载、编译和配置Nginx,以确保其在腾讯云服务器上顺利运行。此外,还将提供一些优化建议,帮助用户提升Nginx的性能和安全性。 ... [详细]
  • Netty框架中运用Protobuf实现高效通信协议
    在Netty框架中,通过引入Protobuf来实现高效的通信协议。为了使用Protobuf,需要先准备好环境,包括下载并安装Protobuf的代码生成器`protoc`以及相应的源码包。具体资源可从官方下载页面获取,确保版本兼容性以充分发挥其性能优势。此外,配置好开发环境后,可以通过定义`.proto`文件来自动生成Java类,从而简化数据序列化和反序列化的操作,提高通信效率。 ... [详细]
  • 在处理遗留数据库的映射时,反向工程是一个重要的初始步骤。由于实体模式已经在数据库系统中存在,Hibernate 提供了自动化工具来简化这一过程,帮助开发人员快速生成持久化类和映射文件。通过反向工程,可以显著提高开发效率并减少手动配置的错误。此外,该工具还支持对现有数据库结构进行分析,自动生成符合 Hibernate 规范的配置文件,从而加速项目的启动和开发周期。 ... [详细]
  • CentOS 7环境下Jenkins的安装与前后端应用部署详解
    CentOS 7环境下Jenkins的安装与前后端应用部署详解 ... [详细]
author-avatar
qwer
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有