MAC系统下Android Studio 实用小技巧

MAC系统下Android Studio 常用快捷键

1 . Cmd + C 复制,Cmd + Shift + C 复制文件路径

2 . Cmd + V 粘贴, Cmd + Shift + V 从剪切板复制,会保留最近复制的五个值.
使用场景:当你复制了一个 A 值,然后又复制了 B 值,此时又想用 A 值的时候.

3 . Cmd + F 在文件中查找, Cmd + Shift + F 在整个工程中查找.
使用场景:比如我要查找页面上的 “网络出错”是在哪个文件弹出的,此时用 Cmd+Shift+F 输入关键字,就会把所有出现该关键字的文件全部列出来.

4 . Cmd + O 搜索类文件,Cmd + Opt + O 在整个工程目录下搜索文件
使用场景:当你想找某个文件,但不想每个文件夹都点开每个文件,因为我们懒,此时Cmd + Opt + O 输入文件名就能找到该文件了.

5 . Cmd +E打开最近的文件,Cmd + Shift + E 打开最近编辑过的文件
使用场景:把编辑过的文件全部给你列出来,方便查找

最近编辑文件列表

6 . Cmd + Shift + F7 高亮代码,有的需要的电脑需要加fn才能生效
使用场景:想看某个类文件在哪些地方被使用,操作之后一目了然.

高亮stock

7 . Cmd + Opt + L 格式化代码
8 . Cmd + / 行注释 Cmd + Opt + / 块注释
9 . 退出以上操作 Esc
10 .Cmd + Shift + – / +(就是你的加号和减号的键,再说一遍就是Delete键左边的那俩货) 折叠方法/打开方法
使用场景:当你想找某个方法在哪定义,而当前类的行数又多又混乱的时候,那么不妨试试这个快捷键,简直觉得整个世界都清净了好么!~

附上一张快捷键的截图 Github 链接在下方

快捷键Xml文件相关

在写 xml 布局文件的时候会经常遇到诸如 ImageView Lint 缺少contentDescription 的提示,API 版本不对爆红,android : text =”” 的值会在屏幕闪一下的问题.那么我们完全可以使用tools来解决这些问题,当然这些并不影响编译,只不过对于我这种有代码洁癖的来说难以忍受罢了.
tools属性可以分为两种:一种是影响 Lint 提示的,一种是关于 xml 布局设计的.

tools Lint 提示

1 . tools:text
在写布局的时候有的时候 IDE 可以看到预览效果,但是有些效果则必须在运行之后才能看见,比如这种情况:TextView 在 xml 中没有设置任何字符,而是在activity中设置了 text. 因此为了在 IDE 中预览效果,你必须在 xml 中为 TextView 控件设置 android:text 属性
<TextView
android:id="@+id/tvDaV"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/honor_title"
android:textSize="13sp"
android:text="三金西瓜霜" />

然后告诉自己上线之前删除就好了简直是图样图森破好么,几乎每次都不会删的,相信你也是这样的,那么还是使用 tools:text=”三金西瓜霜”,这个值会显示在预览的时候,但是真机上是不会显示的,只需两步:
a . 在根部局添加命名空间 xmlns:tools=”http://schemas.android.com/tools http://schemas.android.com/tools”
b . 在 TextView 中使用 tools:text=”三金西瓜霜”, tools 可以覆盖 android 的所有标准属性,将 android: 换成 tools: 即可.同时在运行的时候就连 tools: 本身都是被忽略的,不会被带进 apk 中,搞定.

2 . tools:ignore
ignore 属性是告诉 Lint 忽略 xml 中的某些警告.假设我们写 ImageView 没有写android:contentDescription 这个属性, Lint 就会提示该 ImageView 缺少contentDescription属性.所以我们可以使用 tools:ignore 来忽略这个警告:

<ImageView
android:id="@+id/image_back"
android:layout_width="40dp"
android:layout_height="40dp"
android:padding="8dp"
android:src="@drawable/back"
tools:ignore="contentDescription"/>

3 . tools:targetApi
假设 minSdkLevel 15,而你使用了 Api21 中的控件比如 RippleDrawable,则 Lint会提示警告.
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:color="@color/accent_color"
tools:targetApi="LOLLIPOP" />
4 . tools:locale(本地语言)属性
默认情况下 res/values/strings.xml 中的字符串会执行拼写检查,如果不是英语,会提示拼写错误,

通过以下代码来告诉 Studio 本地语言不是英语,就不会有提示了.

Extract Resource

在编写代码的过程中我们应该尽量减少使用硬编码,就是不要再布局中直接使用字符串或者具体的尺寸值或者颜色值,而是应该放在资源文件中.但是对于已经存在的硬编码方式我们又懒得改,或者是嫌麻烦,拿一个字符串来讲,首先我们要在String.xml 文件中编写一个 item 然后写上 id ,写上对应的值,然后再在布局中引用@sring/xxxx……然后心里就默默的告诉自己算了吧,直接写吧.其实不用这么麻烦,只需要选中这个值,按 Opt+Enter弹出菜单选择 Extract String,在弹出的窗口填上id即可,如果该id已经存在会生成失败.

4,534 views

发表评论