疫情原因,在家开始上学上课了,不过说实话,在家是真的学不下去啊,我是真的那种不自律的人,又懒又笨,管不住自己,这学期任务又多实验更多,还老难;还面临今年考研,真的是太难了。
只能是逼自己一把,尽量让自己在没事的时候少玩手机少玩游戏,多学点东西,要不然学期实验做不完,考研考不上,工作又找不到,那可太惨了!
就在这里记录下自己学习过程吧,记一个小白的学习的知识,且看看自己能不能顺利完成这学期的实验任务吧。
(主要的是开发一个Android软件的实验,之后的学习的内容(更多是笔记)在这里记一下吧。。。)
(大概率是过段日子这篇文档就阉割了。。)
-----------------------------------------------------
记4-18学习笔记(说要克制自己去学习,结果还是拖到了现在)
-----------------------------------------------------
刚开始接触android编程,好多地方还是不懂的,学了点初始的知识,笔记如下:
简单的目录结构的了解:
项目名->app->src->main->java文件夹下存放的是Java的代码。
项目名->app->src->main->res文件夹下存放的是资源文件:
drawable:可以放些文件,也可以放些自定义的文件。
layout:放布局文件
mipmap:放入一些布局文件、logo文件等。
values:放入一些数据
项目名->app->src->main->res:AndroidManifest.xml:所有用到的activity都需要在该文件下声明。同时,在声明好一个activity下对应设置<intent-filter>,它设置了该activity的相关属性(比如对应activity是启动的activity);
声明形式:
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:theme="@style/AppTheme.NoActionBar">
</activity>
<intent-filter>设置在两个activity标签之间。
build.gradle:定义声明了一些有关软件的信息,工具版本号、软件版本号等。
activity_main.xml:布局文件;
content_main.xml:布局文件的相关代码;其中,constraintlayout是一种布局方式,可以替换成LinearLayout:线性布局。其中TextView是用来显示文本的信息
UI组件:
1.布局管理器:
线性布局(LinearLayout)、相对布局(RelativeLayout);
1.1LinearLayout:
常用属性:
android:id :设置一个id类似于标识,可以通过id来找到该布局该空间
android:layout_width :宽度
:layout_heigth :高度
:background :背景,可以设置一个颜色、图片、也可以自定义的activity文件
:layout_margin :外边距
:layout_padding :内边距
:orientation :线性布局的方向(横竖等)。
格式:<LinerLayout
相关定义的属性>
</LinearLayout>
<Viex
相关属性的声明定义
/>
相关属性:android:id=”@+id/id_name” //表示线性布局的id,同时+id表示增加的一个变量;
android:layout_width=”200dp” //该布局宽度;dp是安卓内布局的长度单位;
android:layout_height=”match_parent” //布局高度,match_parent表示继承上一级布局的相关属性;
android:orientation=”vertical” //设置相关信息(?),vertical表示是垂直方面的信息;horizontal表示水平方面的信息(大概意思是,当前布局内部的布局是按照垂直或者水平来安排下一布局的方式):默认是水平排列布局;
android:background=”#000000” //设置布局的背景颜色,用#颜色表示;
android:layout_margin=”20dp” //外边距,当前布局与其他平行布局的距离;同样有上下左右的信息:Top、Left、Right、Bottom;
android:gravity=”bottom” //当前布局的内部布局的位置元素,bottom表示内部布局在下方;同时还有许多其他参数:center:内部的布局在当前布局的中心处;
android:layout_weight=”1”//表示内部布局占的当前父类布局的剩余权重,1表示占全部,但是如果多个布局的权重都是1,那么每个布局占得大小就是1/n;
android:padding=”20dp” //内边距,距离父类边距的距离;可以添加左右上下的信息:
例如:paddingLeft、paddingRight、Bottom、Top;
View:是所有所有空间的一个父类;
相关属性:宽度和高度和背景颜色的定义同上面的LinearLayout;宽度和高度同时也可以继承父布局;其余的属性定义估计也是和LinearLayout相同;
总结:感觉布局这方面目前掌握的还是不够细致。同时,布局这种东西也是讲究设计感,如果就按照目前学习的只是来说,没有设计感,无非也就是一些色块堆叠,所以还是需要从网上找一些例子来自己设计和学习。