当前位置: 首页 > 编程笔记 >

你值得拥有的Android Studio开发小技巧

孙阳旭
2023-03-14
本文向大家介绍你值得拥有的Android Studio开发小技巧,包括了你值得拥有的Android Studio开发小技巧的使用技巧和注意事项,需要的朋友参考一下

上一次发过了一个介绍Studio的,这里再发一个补充下。

我们都知道,Android Studio的功能是非常强大的,也是很智能的。如果有人告诉你学Android开发要用命令行,你可以告诉他Android Studio是谷歌提供给开发者提升效率的。试想想你脑袋里有一堆想法,但是开发编码效率太低导致想法都丢失了或者兴趣消失了多可怕对不。好了废话不多说,这里介绍几个比较好用的技巧和快捷键,提升我们的编码效率。

1.完成一句代码

如果我们调用了一个方法,并给方法传递了参数,这个时候如果我们要结束这个语句,就会用鼠标或者方向键移动光标到行末,输入;然后回车结束。这样子其实效率是很低的,为什么?因为我们的手在键盘上,要去摸鼠标和方向键的距离都是比较远的。所以这里介绍一个组合快捷键用来完成依据代码:Ctrl+Shift+Enter

这里可以看到,我们调用了方法之后,直接使用快捷键,Studio会直接跳到最后并加了一个分号,如果我们再按一下快捷键,会跳转到下一行。如果你觉得这个快捷键有点长(我是这么觉得的),可以通过自定义快捷键来简化这个功能。下面给下具体的步骤:

① 打开Settings

② 选择Keymap

③ 点击搜索框右边的按钮

④ 按下你需要修改的对应快捷键,也就是Ctrl+Shift+Enter,会搜索到对应的快捷键,双击对应的快捷键设置,点击按钮之后会出现下图

⑤ 选择第一个选项来增加一个快捷键,会出现下图

可以直接在这个界面按下你想要的快捷键组合,可以看到如果已经存在的快捷键,那么下面会出现一个黄色叹号警告,我们可以多尝试,选择最方便自己的就可以了。我设置的是Alt+M,M是移动的意思,所以就记住了。

2.打开文档

上一次介绍Studio的通过设置让鼠标悬停在代码上会打开文档,但是默认是不会的。文档是我们学习的最重要的一个对象,在遇到问题的时候第一要想到的应该是文档。打开文档的快捷键默认是:Ctrl+Q,我们要知道,这不仅仅可以允许我们在代码中打开文档,也可以在代码补全的时候打开对应补全的文档,可以看下面这个图

这里在补全的时候如果我们不知道isEmpty方法的用处,可以先将光标移动到该补全的位置,然后按下快捷键,就可以代开对应的文档。

3.提示方法参数

有时候我们写着写着就忘记了这个方法要传入一个什么类型的参数,这个时候,可以使用快捷键:Ctrl+P,效果如下

当光标在方法中的时候,按下快捷键,Studio会提示我们这个方法需要的参数,这个也是比较常用的。

4.复制代码

选中你的代码,然后按下快捷键:Ctrl+D,总比按Ctrl+C和Ctrl+V快吧。

5.快速打开文件

当我们需要打开项目中的某个文件的时候,可以通过快捷键Ctrl+Shift+N打开搜索框,然后输入文件名回车即可。按下快捷键会得到如下搜索框:

6.跳转到代码声明

快捷键:Ctrl+B,这个就不多说了。

7.重写父类方法

快捷键:Ctrl+O

可以看到,打开了选择框之后我们可以直接输入需要重写的方法名来进行查找,匹配上的直接回车就好。

8.安全重命名

好处就是不用自己手动进行每个地方的修改。只需要将光标移动到要重命名的地方,按下快捷键:Shift+F6,这个时候会提示你输入一个新的名字,然后系统会进行搜索,找到所有同名的变量或者方法,然后提示给用户,界面会是下面这样:

这个地方会显示所有使用了这个变量或方法的地方,如果我们需要直接重命名,可以点击左下角的Do Refactor按钮进行确认,如果有不需要重命名的地方,可以选中该行,右击,选择Exclude进行剔除。

9.查找使用方法或类的地方

当项目比较大的而且对Activity进行过重构的时候,或者对别的代码进行维护的时候,很多时候我们需要知道一个方法究竟在哪里被调用了,这个时候可以通过快捷键:Alt+F7来查找到所有使用了这个方法的地方。

10.打开最近使用文件列表

快捷键:Ctrl+E,这个也不多说,谷歌官方的演示视频会经常看到有工程师用这个快捷键。

接着介绍一些除了快捷键以外的技巧。

1.如果要判断一个字符串是不是空你会像下面这样做吗?

2.如果你要逆序遍历一个ArrayList你会像下面这样做吗?

3.如果要根据一个Json数据来写一个对应的bean,你会怎么写?这里可以使用一个比较方便的插件来做,名字叫 GSONFormat ,我们使用这个插件可以通过一段Json生成一个对应的类,怎么下载这个插件的话可以自己百度一下。

比如有这么一段Json数据:

{
 "errNum": "0",
 "errMsg": "success",
 "querySign": "3845925467,2370020290",
 "retData": [
  {
   "rect": {
    "left": "0",
    "top": "0",
    "width": "33",
    "height": "31"
   },
   "word": " 8"
  }
 ]
}

插件界面:

使用插件可以直接生成一个对应的类代码如下:

public class MyBean {

 /**
  * errNum : 0
  * errMsg : success
  * querySign : 3845925467,2370020290
  * retData : [{"rect":{"left":"0","top":"0","width":"33","height":"31"},"word":" 8"}]
  */

 private String errNum;
 private String errMsg;
 private String querySign;
 /**
  * rect : {"left":"0","top":"0","width":"33","height":"31"}
  * word : 8
  */

 private List<RetDataBean> retData;

 public String getErrNum() { return errNum;}

 public void setErrNum(String errNum) { this.errNum = errNum;}

 public String getErrMsg() { return errMsg;}

 public void setErrMsg(String errMsg) { this.errMsg = errMsg;}

 public String getQuerySign() { return querySign;}

 public void setQuerySign(String querySign) { this.querySign = querySign;}

 public List<RetDataBean> getRetData() { return retData;}

 public void setRetData(List<RetDataBean> retData) { this.retData = retData;}

 public static class RetDataBean {
  /**
   * left : 0
   * top : 0
   * width : 33
   * height : 31
   */

  private RectBean rect;
  private String word;

  public RectBean getRect() { return rect;}

  public void setRect(RectBean rect) { this.rect = rect;}

  public String getWord() { return word;}

  public void setWord(String word) { this.word = word;}

  public static class RectBean {
   private String left;
   private String top;
   private String width;
   private String height;

   public String getLeft() { return left;}

   public void setLeft(String left) { this.left = left;}

   public String getTop() { return top;}

   public void setTop(String top) { this.top = top;}

   public String getWidth() { return width;}

   public void setWidth(String width) { this.width = width;}

   public String getHeight() { return height;}

   public void setHeight(String height) { this.height = height;}
  }
 }
}

这就节省了很多时间了。

好了,这次先说这么多,想到了再补充下吧。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。

 类似资料:
  • 本文向大家介绍10个Python小技巧你值得拥有,包括了10个Python小技巧你值得拥有的使用技巧和注意事项,需要的朋友参考一下 列表推导式 你有一个list: bag = [1, 2, 3, 4, 5] 现在你想让所有元素翻倍,让它看起来是这个样子: [2, 4, 6, 8, 10] 大多初学者,根据之前语言的经验会大概这样来做 但是有更好的方法: bag = [elem * 2 for el

  • 本文向大家介绍说说你觉得认为的vue开发规范有哪些?相关面试题,主要包含被问及说说你觉得认为的vue开发规范有哪些?时的应答技巧和注意事项,需要的朋友参考一下 定义变量使用 let ,定义常量使用 const 命名问题 …… https://juejin.im/post/5b67e49551882508603d1431

  • 本文向大家介绍Android开发小技巧篇之集合,包括了Android开发小技巧篇之集合的使用技巧和注意事项,需要的朋友参考一下 1.对于过多的控件,功能类似,数量又多的,可以用include方法。在实现应用中,可以把控件放入List集合中。 以上内容比较简短,简单给大家介绍了Android开发小技巧篇集合的相关知识,希望大家喜欢。

  • 本文向大家介绍Android开发中常用的一些小技巧,包括了Android开发中常用的一些小技巧的使用技巧和注意事项,需要的朋友参考一下 Activity.startActivities() 常用于在应用程序中间启动其他的Activity. TextUtils.isEmpty() 简单的工具类,用于检测是否为空 Html.fromHtml() 用于生成一个Html,参数可以是一个字符串.个人认为它不

  • 本文向大家介绍提高iOS开发的小技巧和思路小结 (二),包括了提高iOS开发的小技巧和思路小结 (二)的使用技巧和注意事项,需要的朋友参考一下 前言 之前跟大家分享过一篇《提高iOS开发的小技巧和思路》,但是里面整理的不够全面,通过最近这段时间的整理学习,又整理了一些小技巧和思路分享给大家,下面话不多说了,来看看详细的介绍吧。 一、如何让你的app在后台持续运行一段时间 iOS的app在按下hom

  • 这期又是游戏集!!! 都是童年玩的小游戏啦~一行代码就能进入使用Python开发的小游戏。 安装与使用 安装当然也很简单一行代码就可以 pip install freegames 由于该项目中的所有游戏均是基于Python内置模块Turtle制作,所以没有太多依赖,安装不会有困难。 安装完之后我们可以使用python -m freegames list来查看所有的游戏列表