安卓基础学习 |周总结
写在前面的话
1、从最开始学习到现在也已经有一周多的时间了,故此总结同时也是回顾在这段时间里学到的知识。
2、同样的,如果其中有什么不足,希望可以指出或补充。
一、学到的一些小技巧
1、设置虚拟设备(手机)的语言
因为虚拟手机的语言默认是英文的,如果想要更改语言,可以这样做:找到虚拟设备上的Settings图标并点击→Language & input→Language→选择你想要的语言
2、快捷键
有了快捷键,在编写代码的时候也会有一定的帮助。
① 常用的快捷键:我平时用的最多的是 ctrl+/ 注释当前行代码。
② 自定义快捷键:在Android Studio菜单中点击【File】➡【Settings…】选项➡选择【Keymap】➡在出现的对应界面,空白处右击
3、DDMS工具
① 打开方式(Android Studio4.1.1版本):找到“D:\AndroidSDK\tools”目录下的monitor.bat文件,双击它。
② 操作:截图功能(点相机图标);查看数据库保存的文件(data----data----找到自己建的项目,db结尾)。
4、更改默认字母全部大写的效果
在相应的布局代码中添加:android:textAllCaps=“false”
5、关于项目名称
① 更改项目名程(在虚拟机上方显示的):找到values文件夹中strings.xml的app_name进行更改就可以了。
② 不显示项目名称:修改themes.xml(主题)文件的parent部分的内容(如下)。
6、找Bug
找bug的方法是找caused by开头的,从下往上找。注意细节,多测试。
二、关于布局
在通过第一个安卓应用程序(Hello Word)了解到了Android的基本知识以及Android Studio的一些基本操作后,我就开始了布局方面的学习。在这其中(线性布局、帧式布局、相对布局、网格布局)我重点学习了线性布局和相对布局。
先简单说说帧式布局(FrameLayout)、网格布局(GridLayout)的特点:前者是一种层叠样式
的布局(也就是一层包裹着一层,需要注意的是后添加的控件会层叠到先添加的上);后者相当于就是一种划分行数和列数
的格子布局,需要先定义好columnCount(总的列数)和rowCount(总的行数)的数值,然后再在各个控件中利用layout_row(行)和layout_column(列)的数值定义好位置(如 layout_row=“0” 和 layout_column=“0” 表示第一行第一列的格子位置)。
① 线性布局(LinearLayout)
特点:当控件水平排列时,显示顺序依次为从左到右,每个子元素占一列;当控件垂直排列时,显示顺序依次为从上到下,每个子元素占一行。支持布局样式嵌套。
属性:权重属性(layout_weight)是线性布局的特有属性。也对相应的属性进行了测试。
属性 | 作用 | 值 |
---|---|---|
android:orientation | 设置线性布局管理器内部组件的排列方向 | horizontal(默认)、vertical |
android:layout_weight | 用于指定剩余空闲空间的分割比例(按照给定的比例分配当前父容器的剩余空间) | 数值 |
② 相对布局(RelativeLayout)
特点:最为灵活,一个控件的位置取决于它本身和其它控件的相对关系。相对于兄弟控件的位置,必须通过ID来进行指定。
属性:学习并测试了相应的属性。
相对于 | 属性 | 作用 | 值 |
---|---|---|---|
父容器 |
|
|
|
|
|
||
|
|
||
兄弟控件 |
|
|
|
|
|
||
|
|
三、关于控件
在控件方面,我格外学习了循环器视图(RecyclerView)。完成了包括有横向滚动的ListView、横向滚动的GridView、瀑布流控件的功能,如下。
四、关于事件处理
学习了处理键盘事件和触摸事件(监听器是View.OnTouchListener,事件处理方法是onTouch() )。
其中键盘事件包括了单击事件(监听器是View.OnClickListener,事件处理方法是onClick() )、焦点事件(监听器是View.OnFocusChangeListener,事件处理方法是onFocusChange() )、按键事件(监听器是View.OnKeyListener, 事件处理方法是onKey() )。
也做了相应的测试来熟悉它们。
五、关于练习任务
目前完成了以下任务。
1、界面练习
在做界面布局的时候,要有一个明确的规划(设计思路),才能更好的完成界面布局。
① 登录
② 首页1
③ 首页2
④ 相对布局
⑤ 列表练习
2、登录注册
这部分主要涉及到了页面跳转和点击事件。实现跳转就需要在项目清单(AndroidManifest.xml)文件中做活动声明。
3、联系人管理
因为最开始不熟悉Ormlite的操作,为了熟悉,所以这部分花费了最多的时间(相较于其他几个任务)。
4、总结
在做这些任务的时候,我基本每一个都出现过爆红(代码出错)的情况,往往一个错误就能耗费我好几个小时的时间,在这些情况中,我也学到了,有一个思路流程的重要性以及细心的重要,因为我的报错基本都是源自于自己代码拼错了一个单词或者引用到了别的id的这种细节问题。还有一些任务处理的不是很好,还需之后改进。
本文地址:https://blog.csdn.net/luck_ch09/article/details/112801160