Java转Android:第4天 用Layout布局实现罗盘和三叉戟
今天只有xml视图布局,没有逻辑代码,认真读完,你可以实现以下功能:
1、拥有一款可以伴随手机旋转的方位罗盘
2、为海王合成断掉的三叉戟
一、我讲
今天主要内容:1、简说Android中的布局;2、重点说一下约束布局;3、稍微一提其他布局。
1.1 布局
我们看到房子,会想到一个叫布局的词语。
房间内的布局是由两部分组成的。
APP页面其实也是一样。
房间的布局会有很多种。同样,Android里面也有很多布局,下面名称带有 Layout
的都是布局。
从Android Studio 2.2开始,新建项目时,默认的布局样式改为了ConstraintLayout,也就是约束布局。
这说明,Android官方建议我们使用约束布局进行开发。
因此,我们首先来学习一下它!
1.2 约束布局 ConstraintLayout
约束,其实就是制约,管束。
当约束布局上加一个按钮的时候,由于它没有约束,运行时会出现在左上角。
这时需要给它添加约束,实现我们的期望。
每个控件的约束都分为垂直和水平两类,一共可以在四个方向上给控件添加约束。
上图中Button的上下左右各有一个圆圈,这圆圈就是用来添加约束的,我们可以将约束添加到总布局上,也可以将约束添加到另一个控件。
添加约束
下图演示如何通过拖拽圆圈到布局,给按钮添加位于整体布局右下角的约束。
给按钮添加一个以其他控件为参照的约束。
删除约束
删除某条约束的方法,点击某个方向的圆圈。
删除某个控件约束的方法,点击控件下方的红色叉号。
删除某个页面约束的方法,点击页面顶部的红色叉号。
智能推断约束
推断约束,是Android Studio依照开发工具的推断,给你自动生成约束。当你摆放完成控件之后,点击图中的魔法棒图标,即可完成自动添加约束。
1.3 其他布局
线性布局 LinearLayout
内部元素按照线性进行排列,分为水平(horizontal)方向和垂直(vertical)方向。
当然,他也可以嵌套使用。
上面就是一个垂直线性分为上下两部分,下部分是一个水平嵌套,分为左右两部分。
实际上最常用的可能还是权重占比。
相对布局 RelativeLayout
相对布局内部元素按照相对位置的说明进行排列,必须要参照一个元素(包括父控件)。
其中最为常用的,还是相对于兄弟控件,相对于兄弟控件的属性,需要指定另一个控件的ID。
二、你做
本期多是界面操作的活,基本上操作Android Studio即可,但是最终生成的还是xml代码。
三叉戟的拼接我们用相对布局,我把素材图片放出来,大家可以使用。
最终代码如下:
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"android:layout_width="match_parent"android:layout_height="match_parent"><ImageViewandroid:id="@+id/mid"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_centerInParent="true"app:srcCompat="@mipmap/mid" /><ImageViewandroid:id="@+id/imageView"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_above="@+id/mid"android:layout_alignLeft="@+id/mid"app:srcCompat="@mipmap/top" /><ImageViewandroid:id="@+id/imageView2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignLeft="@+id/mid"android:layout_below="@+id/mid"app:srcCompat="@mipmap/bottom" /> </RelativeLayout> 复制代码
先让中间部分在布局中间,然后顶部的位于中间之上,底部的位于中间之下。另外,还要左侧对齐。
至于罗盘,采用约束布局,操作就可以了。
三、关于
现在,行业内多是Android转Java,很少有Java转Android的。
但是,这并不妨碍Java同学了解Android开发,从学习的角度去拓宽自己的知识面。
所以,我会以最精简的语言来编写一个 系列教程《Java转Android》 (第一季30篇,日更)。
其实,不管是Java还是python,只要有编程基础的同学,一天看800字,30天可入门安卓。
四、今天还有一段话
我已经连续更新4天了。
不过,我想我还是会继续更新的。
Java转Android:第4天 用Layout布局实现罗盘和三叉戟相关推荐
- android应用开发---(第1章)android基础学习之六大Layout布局
Android中任何可视化的控件都是从android.veiw.View继承而来的,系统提供了两种方法来设置视图:第一种也是我们最常用的的使用XML文件来配置View的相关属性,然后在程序启动时系统根 ...
- Android自适应屏幕大小和layout布局(转)
一:不同的layout Android手机屏幕大小不一,有480x320, 640x360, 800x480.怎样才能让App自动适应不同的屏幕呢? 其实很简单,只需要在res目录下创建不同的layo ...
- Java、Android注解代码生成(ButterKnife原理、ViewBinding)
前言 首先需要一些先验知识: 浅谈Java/Android下的注解 Java.Android基础之-反射 Java.Android静态代理与动态代理 简介 在我们常用的框架中注解和自动生成代码的身影很 ...
- Android开发中遇到的问题(二)——新建android工程的时候eclipse没有生成MainActivity和layout布局...
2019独角兽企业重金招聘Python工程师标准>>> 一.新建android工程的时候eclipse没有生成MainActivity和layout布局 最近由于工作上的原因,开始学 ...
- android java教程_[Java教程]Android开发快速入门
[Java教程]Android开发快速入门 0 2020-12-22 18:01:40 Xamarin.Android 应用程序剖析 以下屏幕截图列出了解决方案的内容. 下面是一个解决方案资源管理器, ...
- Android自定义水波纹动画Layout
Android自定义水波纹动画Layout 源码是双11的时候就写好了,但是我觉得当天发不太好,所以推迟了几天,没想到过了双11女友就变成了前女友,桑心.唉不说了,来看看代码吧. 展示效果 Hi前辈 ...
- 《Java和Android开发实战详解》——2.5节良好的Java程序代码编写风格
本节书摘来自异步社区<Java和Android开发实战详解>一书中的第2章,第2.5节良好的Java程序代码编写风格,作者 陈会安,更多章节内容可以访问云栖社区"异步社区&quo ...
- 使用Java让android手机自动执行重复重启
使用Java让android手机自动执行重复重启 public static void main(String[] args)throws IOException,Exception { for(in ...
- style=@android:style/buttonbar,Setting style=?android:attr/buttonBarStyle to parent layout and s...
I followed Android recommendation and set style="?android:attr/buttonBarStyle" to parent l ...
最新文章
- 软件驱动安装在docker_docker 安装软件
- C语言 · 计算时间
- Cordova探险系列(一个)
- 不用代码,10分钟打造属于自己的第一款小程序
- 进程和线程的基本概念
- GDCM:gdcm::PersonName的测试程序
- VTK:PolyData之ExtractPolyLinesFromPolyData
- sklearn自学指南(part55)--决策树
- Jedis使用测试——连接本地及远程的Redis
- 面向对象程序设计上机练习五(类和对象)
- Centos中yum方式安装java
- 拓端tecdat|R语言基于树的方法:决策树,随机森林,Bagging,增强树
- 2022西工大网络安全知识竞赛赛后回顾资料
- 如何UNI-APP中使用iconfont彩色图标
- 为什么汉语不能用来编程?
- 线上的观众朋友们好,这里是最劲最有料的华为云现场直播!
- 题破山寺后禅院-唐代诗人常建
- IoT设备与手机App之间如何实现实时消息通信——业务场景最佳实践
- 彩色图像RGB三通道问题探究
- 浅谈2017棋牌游戏的前景 运营 推广(上) 转贴