Study jams 第二课程的学习
Posted 小坤_Android
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Study jams 第二课程的学习相关的知识,希望对你有一定的参考价值。
StudyJams(第二节课)
看完第二节课的视频之后,感觉谷歌大神讲的很详细,在这里我总结些第二节课的内容
<1 本节课程主要讲了ViewGroup
ViewGroup是什么呢?我们看单词表意(View+Group),View是所有TextView,ImageView,等等
的父亲,Group是组的意思,整合在一起意思就是所有控件的容器,因为我们要在android中展示TextView,
或者ImageView需要一个容器来放置,所以就有了ViewGroup,而ViewGroup是一个容器,在XNL中我们Android
引进了布局这个名词来展示所有的View,在Android中布局分为5大类,他们都继承ViewGroup
我们来看看API
java.lang.Object
↳ android.view.View
↳ android.view.ViewGroup
Android常见有五种布局
LinearLayout(线性); RelativeLayout(相对); FrameLayout(帧布局)(就是一层上面再放一层可以重叠);TableLayout(网格布局);AbsoluteLayout(绝对布局);
<<1 线性布局 LinearLayout
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" //充满屏幕
android:layout_height="match_parent"
android:orientation="vertical"> //它的方向,vertical是竖直 ,horizontal水平方向
<--LinearLayout有一个很 重要的属性就是权重(weight)这个属性很灵活,它主要的功能就是在整个布局中它只分整个布局剩余的空间
现在安卓设备很多,屏幕大小也很多权重这个属性很好的,因为权重涉及的情况很多这里我就简单说说
我们如果在某个方向上使用了weight ,那么我们必须在对应的方向上将width设置为0dp.
它告诉了我们设置为0dp是因为使用weight,系统是采用了另外一套计算占用空间大小的算法的-->
<TextView
android:id="@+id/TvId"
android:layout_width="wrap_content" //内容有多大就有多大
android:layout_height="wrap_content"
android:textSize="10sp" /> //sp字体单位,谷歌官方推荐
<ImageView
android:id ="ImgId"
android:layout_width="wrap_content" //内容有多大就有多大
android:layout_height="wrap_content"
android:src="@drawable/ic_laucher"/>
</LinearLayout>
<< 相对布局RelativeLayout
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" //充满屏幕
android:layout_height="match_parent">
<-- RelativeLayout 是相对布局,就是它布局里的每一个view的都是相对的
-->
<TextView
android:id="@+id/TvId"
android:layout_width="wrap_content" //内容有多大就有多大
android:layout_height="wrap_content"
android:textSize="10sp" /> //sp字体单位,谷歌官方推荐
//现在我要把ImageView控件放在TextView下面
//就用到这个属性layout_below 在谁的下面,(属性很多,不一一写了)
<ImageView
android:id ="ImgId"
android:layout_width="wrap_content" //内容有多大就有多大
android:layout_height="wrap_content"
android:layout_below="@id/TvId"
android:src="@drawable/ic_laucher"/>
//如果我们想让一个控件在屏幕的中间该怎么办呢?
//layout_centerInParent parent是父亲的意思吧,意思就是在父容器的中间
</RelativeLayout>
ps:五大布局就不一一写了,具体用法看API
<2
边距
margin
padding
android:layout_margin指该控件距离边父控件的边距,
android:padding指该控件内部内容,如文本距离该控件的边距。
ps: 看完视频我觉得我复习了一遍安卓基础,讲的挺详细,通俗易懂。
以上是关于Study jams 第二课程的学习的主要内容,如果未能解决你的问题,请参考以下文章
机器学习 Study Jam 在线答疑:TensorFlow 入门第 1 期
Android Study Jam 在线答疑第二期:Jetpack Compose 快速入门
2021 呼唤各方大神,机器学习 Study Jam 第三季来了!
Google Study Jams:带你入门 Android 开发