前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >AndroidStudio简单使用(二):左侧Structure

AndroidStudio简单使用(二):左侧Structure

作者头像
dodo_lihao
发布于 2018-09-12 03:01:24
发布于 2018-09-12 03:01:24
1.7K0
举报
文章被收录于专栏:懒人开发懒人开发

Structure结构

上面有说, 可以通过 Alt + 7 快捷键 调出来。 个人觉得, 这个对于查看代码结构,还是很方便的。直接可以看到代码的大体结构。 我们以 android-23 的 View 类,为例

右侧2个箭头

Paste_Image.png

【箭头向下 指向横线】

选中后, 我们点击左侧,具体的类 或者 接口。 我们发现右侧会跟着移动

Paste_Image.png

取消选择以后,可以发现不会跟着移动

Paste_Image.png

【箭头向下 指向横线】,表示随着左侧点击,右侧自己查找类和方法

【横线指出 向下箭头】

选中后, 我们点击右侧, 具体代码位置。 发现也会到对应的位置。

Paste_Image.png

同理, 取消后,就不存在了

【横线指出 向下箭头】,表示随着右侧点击,左侧查找所在类和方法

或者总体自己理解 横线,表示代码。 一个是选择后,去找代码。 一个是从代码,去找位置


展开合并

Paste_Image.png

我们【点击Expand All,展开全部】

Paste_Image.png

可以发现,左侧全部展开了

【点击 Collapse All, 合拢全部】

Paste_Image.png

可以发现,左侧全部合拢了

这2个,表示左侧 全部合拢, 全部展开


匿名类

显示匿名类

Paste_Image.png

具体匿名类概念,这里就不描述了,属于基础,可以参考 http://docs.oracle.com/javase/tutorial/java/javaOO/anonymousclasses.html


显示继承

Paste_Image.png

选择之前,是这样的

Paste_Image.png

选择之后,可以发现,浅灰色的方法,都是继承自父类的(双击,可以进入父类查看)

Paste_Image.png


显示非公开

Paste_Image.png

点击前,我们可以看见左边有一些类

Paste_Image.png

点击后,我们可以发现, 一些private等的类,也可以看见了

Paste_Image.png

这里,我们可以看见 DeclaredOnClickListener 私有静态类 (都说反射效率低, 但是可以发现 很多底层的类, 都大量运用反射)

Paste_Image.png

取消点击后, 我们在左边就看不见对应的类了


显示属性

这里f , 就是 field的意思, 也就是 属性, 当然,我觉得理解成 字段 也挺好。

Paste_Image.png

点击前,我们只能看见 类,接口和方法 点击后,我们可以看见对应的属性

Paste_Image.png


按属性排列

这里P,是 Property。 自己 理解 Property属性, 和 Field的区别。 (Property是对外的, 通常是为了让外面知道,通常有setter或getter) (Field 不存在对不对外, 类中需要存储, 都属于Field) (自己参考:Properties and fields are the same, except a property is a settable/gettable field)

Paste_Image.png

我们拿android-23的View 的 setOnClickListener() 方法举例。 我们调整成, Autoscroll from Source 也就是,【横线指出 向下箭头】, 通过源码去移动左侧的标记

Paste_Image.png

当我们点击【P】的时候

Paste_Image.png

我们可以发现,左侧 把对应的方法 放置到了 属性 onClickLister: OnClickListener 下面 这样, 我们可以按 Property属性去了解作者的代码想法


按实现归类

Paste_Image.png

这个符合,自己看不太清楚, 感觉 像一个【I】,也就是 Interface的意思

Paste_Image.png

我们可以发现, View 实现 3个接口, 2个类的内部接口Callback, 一个公开接口AccessibilityEventSource 拿 KeyEvent的内部接口为例:

Paste_Image.png

onKeyDown 方法 是经常用的

我们在View中, 找到实现

Paste_Image.png

这个时候,左侧方法是单独排列的。 当我们点击 【I】的时候,

Paste_Image.png

我们可以发现,是按接口类型, 排列 这样, 当一个类实现多个接口的时候 可以清楚看出哪些方法是实现哪个接口


按字母顺序排序

按字母顺序排列, 这个比较好理解

Paste_Image.png

点击后,就按字母顺序排列

Paste_Image.png


按是否可见排列

要按可见度排序, 要先打开 show non-public【显示非公开】

Paste_Image.png

我们以装载 OnClickLister的 静态内部类 ListenerInfo 举例(没有修饰符,是不可见的) 这个时候,我们没点击 可见度排序 前 我们发现 ListenerInfo 是按 代码排序的, 比较靠前

Paste_Image.png

点击后:

Paste_Image.png

就按可见度排序,排到后面了


其他表示

访问权限

访问权限修饰符修饰成员变量和方法

  • public:表明该成员变量和方法是共有的,能在任何情况下被访问。
  • protected:必须在同一包中才能被访问。
  • friendly:在一个包中或者子类中才能被访问。(可以不写)
  • private: 只能在本类中访问。

我们看见在【m】后面(当然,类和接口后都有)

Paste_Image.png

有这4中,也就是分别代表上面的四种修饰符

  • public:

Paste_Image.png

  • protected:

Paste_Image.png

  • friendly:

Paste_Image.png

  • private:

Paste_Image.png

其他1

Field:字段属性

Paste_Image.png

Method:方法

Paste_Image.png

Class:类

Paste_Image.png

Interface:接口

Paste_Image.png

其他2

这里比较多, 就拿 方法m 来举例子: final:

Paste_Image.png

static:

Paste_Image.png

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016.09.01 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
unity3d的入门教程_3D网课
一、Unity下载与安装 参考博客:Unity Hub、unity、PlasticSCM安装
全栈程序员站长
2022/09/22
4K0
基础渲染系列(十八)——实时光全局光照、探针体积、LOD组
这是关于渲染的系列教程的第18部分。第17部分中总结了烘焙的全局照明之后,我们将继续支持实时GI。之后,我们还将支持光探针代理体积(LPPVs)和LOD组的淡入淡出。
放牛的星星
2020/07/10
4.3K0
基础渲染系列(十八)——实时光全局光照、探针体积、LOD组
Unity基础(13)-光照系统
在2017年以前光照贴图技术是游戏光照设置的主流方式。2017年以后,光照的实时计算,近乎真实的光源环境被一系列游戏展示出来如:守望先锋,绝地求生等游戏的火爆,让我们见证了开发者对于光源环境的精细化耕作。
孙寅
2020/06/02
2.9K0
三维重建技术综述
来源丨https://blog.csdn.net/qq_30815237/article/details/91897736
3D视觉工坊
2021/01/13
2.7K0
三维重建技术综述
Unity通用渲染管线(URP)系列(十)——点光和聚光灯阴影(Perspective Shadows)
这是有关创建定制脚本渲染管道的系列教程的第十部分。它增加了对点光源和聚光灯的实时阴影的支持。
放牛的星星
2021/01/11
3.8K0
Unity通用渲染管线(URP)系列(十)——点光和聚光灯阴影(Perspective Shadows)
Unity 3D初学入门教程,7天玩转游戏开发VR虚拟现实1
本套游戏开发教程是基于C#语言进行开发的。没有C#基础的同仁可以查看我写的C#的教程。关注做全栈攻城狮公众号,回复“.net目录”就能获取全套教程目录。
做全栈攻城狮
2018/12/20
1.3K0
Three.js 手写跳一跳小游戏(上)
玩家从一个方块跳到下一个方块,如果没跳过去就算失败,跳过去了就会再出现下一个方块。
神说要有光zxg
2023/08/28
5030
Three.js 手写跳一跳小游戏(上)
基础渲染系列(十六)——静态光照
这是关于渲染的系列教程的第16部分。上次,我们渲染了自己的延迟灯光。在这一部分中,我们转到灯光贴图上来。
放牛的星星
2020/07/10
3.8K0
基础渲染系列(十六)——静态光照
Unity基本操作以及Roll A Ball窗口界面以及菜单Roll A Ball
第一个手部图标,可以拖动物体,对准物体点击就可以拖动。第二个就是指针图标,可以选择物体的移动方向。可以选择x,y,z三个方向进行移动。第三个就是旋转图标,可以对物体进行任意方向的旋转。第四个可以改变物体的大小。 这个时候按住鼠标右键可以对场景查看,全景查看。按下w,s可以对镜头远近调节,a,d可以左右位移,如果仅仅是鼠标左右移动那就仅仅只能旋转而已。
西红柿炒鸡蛋
2018/12/06
1.1K0
如何用python制作3d游戏_【教程】12个步骤让你快速学会制作3D游戏
Unity3D不仅是一款功能强大且易于上手的游戏引擎,更重要的是,它还可以被免费下载(它还有一个功能更强大的付费版,但其实你可以使用免费版本完成绝大部分工作)。
全栈程序员站长
2022/09/02
3.6K0
Unity通用渲染管线(URP)系列(五)——烘焙光(Baked Light)
· 3.3Light Probe Proxy Volumes(LPPVs)
放牛的星星
2020/12/24
8.9K0
基础渲染系列(十五)——延迟光照
这是关于渲染的系列教程的第15部分。在上一部分中,我们添加了雾。现在,我们将创建自己的延迟光照。
放牛的星星
2020/07/10
3.5K0
基础渲染系列(十五)——延迟光照
Unity3d场景快速烘焙【2020】
很多刚刚接触Unity3d的童鞋花了大量的时间自学,可总是把握不好Unity3d的烘焙,刚从一个坑里爬出来,又陷入另一个新的坑,每次烘焙一个场景少则几个小时,多则几十个小时,机器总是处于假死机状态,半天看不到结果,好不容易烘焙完了,黑斑、撕裂、硬边、漏光或漏阴影等缺陷遍布,惨不忍睹,整体效果暗无层次,或者苍白无力,灯光该亮的亮不起来,该暗的暗不下去,更谈不上有什么意境,痛苦的折磨,近乎失去了信心,一个团队从建模到程序,都没什么问题,可一到烘焙这一关,就堵得心塞,怎么也搞不出好的视觉效果,作品没法及时向用户交付,小姐姐在这里分享一些自己的经验,希望能帮到受此痛苦折磨的朋友,话不多说,开工!
全栈程序员站长
2022/07/01
4.3K0
Unity3d场景快速烘焙【2020】
Unity面试刷题库
答:在构造函数如果有public修饰的静态构造函数时会报:“静态构造函数中不允许出现访问修饰符”,如果什么修饰符都不加的话不会报错,静态构造函数一般是起初始化作用。
孙寅
2020/06/02
4.1K0
基础渲染系列(五)——多灯光
(温馨提示:本系列知识是循序渐进的,推荐第一次阅读的同学从第一章看起,链接在文章底部)
放牛的星星
2020/07/10
2.5K0
基础渲染系列(五)——多灯光
基础渲染系列(七)——阴影
(温馨提示:本系列知识是循序渐进的,推荐第一次阅读的同学从第一章看起,链接在文章底部)
放牛的星星
2020/07/10
4.2K0
基础渲染系列(七)——阴影
基础渲染系列(八)——反射
(温馨提示:本系列知识是循序渐进的,推荐第一次阅读的同学从第一章看起,链接在文章底部)
放牛的星星
2020/07/10
4.1K0
Unity基础(10)-坐标系统
3D坐标系是3D游戏开发与VR开发中的基础概念。一般而言3D坐标系都是使用的 笛卡尔坐标系来描述物体的坐标信息,笛卡尔坐标系:分为左手坐标系与右手坐标系
孙寅
2020/06/02
5K0
【Unity3D】游戏物体操作 ① ( 场景简介 | 添加游戏物体 | 操作游戏物体 | 选中游戏物体 | 场景显示效果缩放 | 重命名游戏物体 | 复制游戏物体 | 删除游戏物体 | 移动物体 )
Scene 场景 指的是 游戏中的场景 , 也可以理解为 关卡 ; 如 : 房间场景 , 需要加载墙壁 , 地板 , 家具等模型 ; 通常一个场景需要一次性加载到内存中 ;
韩曙亮
2023/03/30
1.7K0
【Unity3D】游戏物体操作 ① ( 场景简介 | 添加游戏物体 | 操作游戏物体 | 选中游戏物体 | 场景显示效果缩放 | 重命名游戏物体 | 复制游戏物体 | 删除游戏物体 | 移动物体 )
基础渲染系列(十七)——混合光照
这是关于渲染的系列教程的第17部分。上次,我们通过光照贴图增加了对静态照明的支持。现在,我们将烘焙和实时照明的功能相结合。
放牛的星星
2020/07/10
2.7K0
基础渲染系列(十七)——混合光照
推荐阅读
相关推荐
unity3d的入门教程_3D网课
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文