墨色风雨
许多人在做完Keymap匹配到Eclispe快捷键后,发现查看资源或者函数在哪些地方被引用的快捷键“Ctrl+Shift+G”不灵了,你选中某个函数后,使用这个快捷键,发现只会光标跳到该类中引用这个函数的地方。原因是啥呢? 首先这里简单分析下,选择Keymap后IDE所做的工作及选择后发生快捷键失效原因,Android Studio设置KeyMap到Eclipse,是进行了一个快捷键的映射操作,但是Android Studio本身的快捷键数量和Eclipse是不一样的,比如AndroidStudio中有100个快捷键,Eclipse中有95个,而且刚好Android Studio和Eclipse相同快捷操作点刚好是95个,当然实际的肯定不是这样,映射只能映射公共的部分,所以在映射完成后,很多人都会发现在Eclipse中能用的快捷键在AndroidStudio不能使了。 导致不能使的原因总共有四个: 1、Android Studio找不到和Eclipse一样的快捷键功能点,映射失败 2、另外一个原因是Android Studio中映射了的功能点快捷键和未映射的功能点快捷键存在冲突 3、快捷键需要在某些条件下触发才有效,这个很奇葩 4、你到快捷键列表看,快捷键是对的,然后对应的快捷功能描述也是对的,然后你发现也没有跟其他快捷键有冲突,但是就是私活不能用,啥问题,这个是因为在Android Studio和Eclipse中同名的功能功能点其实功能是不一样的。举个例子,比如快捷键功能点x,在Eclipse中是快速查找,但是在Android Studio有可能变成了错误提示。 原因4和原因2最容易出现。那怎么区分是哪个原因呢,首先找到快捷键对应的功能点,然后看看快捷键是否正确,正确的话,看看是否有冲突,如果存在冲突的话,解决冲突,解决冲突后看看行不行,不行的话那就是原因4了。原因4就比较不容易解决了。关于如何查看冲突,请戳这:Android Stuido如何查看快捷键冲突? 原因找到了,那如何解决了,这个时候只能自己找到快捷键设置选项,找到对应的功能点,设置你所想要的快捷键。 当然针对原因3,这个就不是解决办法了。 言归正传,映射完成后,不想自己去手动修改快捷键,那到底如何查看资源或者函数在哪些类中被引用,目前我知道的有3种方式: 1、快捷键:Ctrl+G,这种方法最简单,其实这边这个快捷键就是对应Eclipse中的Ctrl+Shift+G 2、快捷键: Ctrl+Alt+Shift+F7,这个方法是第一种方法的复杂版,你可以在弹出的对话框中进行一些选择 3、快捷键:Ctrl+H,这个就是就是搜索功能了,Find in path。 注:当然也可以设置成鼠标操作的快捷键,如下图,选择第二项,然后在弹出的对话框中选择即