浅浅仿制一个APP首页

一、实验目标

做一个APP首页,包括顶部图片、顶部菜单栏、中部消息模块、底部Tab按钮。学习 ScrollView, RelativeLayout,以及插件之间的穿插使用。

二、实验步骤

列出实验的关键步骤、代码解析、截图。

1.逻辑梳理

做一个app首页,包括顶部图片、顶部菜单栏、中部消息模块、底部Tab按钮。

 

ScrollView

layout_width:宽,layout_height:高,ScrollView内部有且仅有一个控件

父布局种类

LinearLayout(线性布局)RelativeLayout(相对布局)、AbsoluteLayout(绝对布局)、TableLayout(表格布局)、FrameLayout(框架布局)

RelativeLayout布局

RelativeLayout,顾名思义,相对布局,也是非常常用的布局,他比LinearLayout更加灵活,可以实现非常复杂的UI。

 

相对其他控件对齐方式

 

2.代码实现

我使用了RelativeLayout布局

<RelativeLayoutandroid:layout_width="match_parent"android:layout_height="match_parent">
</RelativeLayout>    

首页和顶部大图的代码linearLayout

 

<LinearLayoutandroid:layout_width="match_parent"android:orientation="vertical"android:layout_height="wrap_content"><TextViewandroid:layout_width="match_parent"android:layout_height="50dp"android:textSize="18dp"android:textColor="#333"android:text="首页"android:background="#FFFEFE"android:gravity="center"android:textStyle="bold"></TextView><LinearLayoutandroid:layout_width="match_parent"android:background="#FFFFFF"android:orientation="vertical"android:layout_height="wrap_content"><ImageViewandroid:layout_width="match_parent"android:layout_height="200dp"android:layout_marginRight="10dp"android:layout_marginLeft="10dp"android:src="@mipmap/test_img"></ImageView>

接着上部分的代码,接下来是四个菜单图标LinearLayout

 

<LinearLayoutandroid:layout_width="0dp"android:layout_height="100dp"android:orientation="vertical"android:layout_weight="1"><ImageViewandroid:layout_width="50dp"android:layout_height="50dp"android:layout_marginTop="10dp"android:layout_gravity="center"android:background="@mipmap/test_icon1"></ImageView><TextViewandroid:layout_width="match_parent"android:layout_height="wrap_content"android:gravity="center"android:text="验房"android:layout_marginTop="10dp"></TextView></LinearLayout><LinearLayoutandroid:layout_width="0dp"android:layout_height="100dp"android:orientation="vertical"android:layout_weight="1"><ImageViewandroid:layout_width="50dp"android:layout_height="50dp"android:layout_marginTop="10dp"android:layout_gravity="center"android:background="@mipmap/test_icon2"></ImageView><TextViewandroid:layout_width="match_parent"android:layout_height="wrap_content"android:gravity="center"android:text="日常巡检"android:layout_marginTop="10dp"></TextView></LinearLayout><LinearLayoutandroid:layout_width="0dp"android:layout_height="100dp"android:orientation="vertical"android:layout_weight="1"><ImageViewandroid:layout_width="50dp"android:layout_height="50dp"android:layout_marginTop="10dp"android:layout_gravity="center"android:background="@mipmap/yaoshiguanli"></ImageView><TextViewandroid:layout_width="match_parent"android:layout_height="wrap_content"android:gravity="center"android:text="钥匙管理"android:layout_marginTop="10dp"></TextView></LinearLayout><LinearLayoutandroid:layout_width="0dp"android:layout_height="100dp"android:orientation="vertical"android:layout_weight="1"><ImageViewandroid:layout_width="50dp"android:layout_height="50dp"android:layout_marginTop="10dp"android:layout_gravity="center"android:background="@mipmap/tongjifenxi"></ImageView><TextViewandroid:layout_width="match_parent"android:layout_height="wrap_content"android:gravity="center"android:text="统计分析"android:layout_marginTop="10dp"></TextView></LinearLayout>
​</LinearLayout>
</LinearLayout>

接下来是代办和更多这一行

 

<LinearLayout
​android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_marginTop="10dp"android:orientation="horizontal"><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:textStyle="bold"android:textColor="#333"android:textSize="16dp"android:layout_marginLeft="10dp"android:text="待办(10)"></TextView><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_marginRight="10dp"android:layout_marginLeft="10dp"android:text="更多"android:textColor="#666"></TextView>
</LinearLayout>

接下来是消息部分Scrolliview

 

<ScrollViewandroid:layout_width="match_parent"android:layout_height="wrap_content"><RelativeLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content">
​<RelativeLayoutandroid:id="@+id/m1"android:layout_width="380dp"android:layout_height="90dp"android:layout_centerHorizontal="true"android:layout_marginTop="10dp"android:background="@mipmap/back">
​<RelativeLayoutandroid:layout_width="70dp"android:layout_height="20dp"android:background="@mipmap/blue1">
​<TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignParentTop="true"android:layout_centerInParent="true"android:layout_marginTop="3dp"android:text="钥匙管理"android:textColor="#FFFF"android:textSize="10dp"android:textStyle="bold"></TextView></RelativeLayout>
​<TextViewandroid:id="@+id/text1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_marginLeft="20dp"android:layout_marginTop="30dp"android:text="鼎世华府1号楼8单元801业主提报钥匙借用申请"android:textColor="#333"android:textSize="13dp">
​</TextView>
​<TextViewandroid:id="@+id/num1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_below="@id/text1"android:layout_marginLeft="20dp"android:layout_marginTop="10dp"android:text="3663"android:textColor="#F43225"android:textSize="18dp"android:textStyle="bold">
​</TextView>
​<TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_below="@id/text1"android:layout_marginTop="14dp"android:layout_toRightOf="@id/num1"android:text="条"android:textSize="14dp"></TextView>
​<ImageViewandroid:layout_width="11dp"android:layout_height="11dp"android:layout_alignParentRight="true"android:layout_centerVertical="true"android:layout_marginRight="10dp"android:src="@mipmap/right">
​</ImageView>
​</RelativeLayout>
​<RelativeLayoutandroid:id="@+id/m2"android:layout_width="380dp"android:layout_height="90dp"android:layout_below="@id/m1"android:layout_centerHorizontal="true"android:layout_marginTop="20dp"android:background="@mipmap/back">
​<RelativeLayoutandroid:layout_width="70dp"android:layout_height="20dp"android:background="@mipmap/green1">
​<TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignParentTop="true"android:layout_centerInParent="true"android:layout_marginTop="3dp"android:text="验房"android:textColor="#FFFF"android:textSize="10dp"android:textStyle="bold"></TextView></RelativeLayout>
​<TextViewandroid:id="@+id/text2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_marginLeft="20dp"android:layout_marginTop="30dp"android:text="海尔世纪公馆一期12号楼3单元101房间问题待指派"android:textColor="#333"android:textSize="13dp">
​</TextView>
​<TextViewandroid:id="@+id/num2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_below="@id/text2"android:layout_marginLeft="20dp"android:layout_marginTop="10dp"android:text="3"android:textColor="#F43225"android:textSize="18dp"android:textStyle="bold">
​</TextView>
​<TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_below="@id/text2"android:layout_marginTop="14dp"android:layout_toRightOf="@id/num2"android:text="条"android:textSize="14dp"></TextView>
​<ImageViewandroid:layout_width="11dp"android:layout_height="11dp"android:layout_alignParentRight="true"android:layout_centerVertical="true"android:layout_marginRight="10dp"android:src="@mipmap/right">
​</ImageView>
​</RelativeLayout></RelativeLayout>
</ScrollView>

最后是页面最下方的导航栏,以及上面没有收尾的一些后缀

 

</LinearLayout><LinearLayoutandroid:layout_width="match_parent"android:layout_height="70dp"android:background="#FFFFFF"android:layout_alignParentBottom="true"android:orientation="horizontal"android:weightSum="4"><LinearLayoutandroid:layout_width="0dp"android:layout_height="100dp"android:orientation="vertical"android:layout_weight="1"><ImageViewandroid:layout_width="25dp"android:layout_height="25dp"android:layout_marginTop="15dp"android:layout_gravity="center"android:background="@mipmap/test_icon3"></ImageView><TextViewandroid:layout_width="match_parent"android:layout_height="wrap_content"android:gravity="center"android:text="首页"android:textSize="13dp"></TextView></LinearLayout><LinearLayoutandroid:layout_width="0dp"android:layout_height="100dp"android:orientation="vertical"android:layout_weight="1"><ImageViewandroid:layout_width="25dp"android:layout_height="25dp"android:layout_marginTop="15dp"android:layout_gravity="center"android:background="@mipmap/daibanshixiang"></ImageView><TextViewandroid:layout_width="match_parent"android:layout_height="wrap_content"android:gravity="center"android:text="验房"android:textSize="13dp"></TextView></LinearLayout><LinearLayoutandroid:layout_width="0dp"android:layout_height="100dp"android:orientation="vertical"android:layout_weight="1"><ImageViewandroid:layout_width="25dp"android:layout_height="25dp"android:layout_marginTop="15dp"android:layout_gravity="center"android:background="@mipmap/baobiao"></ImageView><TextViewandroid:layout_width="match_parent"android:layout_height="wrap_content"android:gravity="center"android:text="统计"android:textSize="13dp"></TextView></LinearLayout><LinearLayoutandroid:layout_width="0dp"android:layout_height="100dp"android:orientation="vertical"android:layout_weight="1"><ImageViewandroid:layout_width="25dp"android:layout_height="25dp"android:layout_marginTop="15dp"android:layout_gravity="center"android:background="@mipmap/guanli"></ImageView><TextViewandroid:layout_width="match_parent"android:layout_height="wrap_content"android:gravity="center"android:text="设置"android:textSize="13dp"></TextView></LinearLayout></LinearLayout></RelativeLayout>
</LinearLayout>

三、程序运行结果

列出程序的最终运行结果及截图。

 

界面结构如图

 

四、问题总结与体会

1.布局需要反复的尝试调整,第一次要有耐心。

2.圆角可以参考别人的处理方式,也可以使用带有圆角的图片。

3.注意布局的层次结构,不要一团乱麻,按照给好的分块进行大的布局,再在里面填充小的元素。

4.遇到没有提供的图片,可以自行制作,也可以直接用色块填充。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/30766.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

花嫁之容氏浅浅最后怎么样了_花嫁之容氏浅浅章节目录阅读

花嫁之容氏浅浅小说完整版无弹窗在线阅读。花嫁之容氏浅浅小说是作者&#xff1a;许暖暖创作完成的一本热门玄幻灵异小说&#xff0c;主要讲述女主舒浅和鬼王容祁两人的精彩故事。梦里&#xff0c;舒浅感受到一双冰冷的手在自己身上游走&#xff0c;可是即使这样&#xff0c;舒…

干货文章 | 低代码真的有价值吗?

作者&#xff1a;瀚码技术钟惟渊&#xff08;第⼀作者&#xff09;、独⽴顾问王甲佳&#xff08;第⼆作者&#xff09;、瀚码⼀⼑云叨叨AI助⼿&#xff08;第三作者&#xff09; 全文共4912字&#xff0c;阅读约需要15min 本系列文章由瀚码技术钟惟渊构思、制定大纲、组织了关…

零信任落地实践【新世界】

&#x1f315;写在前面 &#x1f389;欢迎关注&#x1f50e;点赞&#x1f44d;收藏⭐️留言&#x1f4dd; ✉️今日分享&#xff1a; 莫道前路多险阻&#xff0c;再闯关山千万重 &#x1f340; 前言 轻舟已过万重山&#xff0c;始终不忘初心。在网络安全领域&#xff0c;我们…

神龙显灵-走进中国传统节日二月二龙抬头

二月二龙抬头&#xff0c;是中国传统的节日之一&#xff0c;也是春节的收官之战。这个节日被视为一个转折点&#xff0c;标志着春天的到来&#xff0c;也为农民们带来了新的希望和期待。 二月二这个日子有很多习俗和传说&#xff0c;其中最著名的就是“龙抬头”。据传说&#…

盘古大模型,让人人实现数字人自由

编辑&#xff1a;阿冒 设计&#xff1a;沐由 就在华为开发者大会2023 < HDC.Cloud 2023 > 正式开启的前夜&#xff0c;一则重磅消息从海外传来&#xff1a; 国际顶级学术期刊《自然》&#xff08;Nature&#xff09;杂志正刊发表了华为云盘古大模型研发团队研究成果——《…

奥运礼服设计师:AIGC 让童装设计从绿皮车进入高铁时代

近日&#xff0c;由温州 AIGC 产业联盟、温州市服装商会共同发起的“首届温州鞋服产业 AIGC 设计大赛”活动正如火如荼进行。大赛聚焦 13 岁青少年服饰设计这一行业存在已久的难题&#xff0c;探讨如何利用 AIGC 热门工具解决青少年服装设计痛点。据巴比特了解&#xff0c;该活…

每日互动(个推)CTO叶新江:AIGC时代,大模型推动数据要素商业化

ChatGPT在一夜之间火爆互联网&#xff0c;让AIGC受到世界范围内的高度关注。时至今日&#xff0c;AIGC热度持续高涨&#xff0c;各大互联网公司争相布局这一领域。日渐成熟的技术、显著的降本增效优势以及日益增长的市场需求等因素&#xff0c;已经推动AIGC成为互联网公司新一轮…

YEF 2023 18日开幕,逾千青年精英齐聚话“突围”

YEF2023 18日在温州开幕&#xff0c;在CCF YOCSEF创建25周年之际&#xff0c;逾千名计算机相关的学术、技术、产业、媒体、社会组织中的青年人才&#xff0c;汇聚温州鹿城区&#xff0c;一起回望、一起思辨、一起突围。 5月18日上午&#xff0c;由CCF主办&#xff0c;温州市人民…

AI大模型迈入应用时代,每日互动推动“可控大模型”落地

垂直行业更需要可控大模型 当下&#xff0c;大模型正在不断精进&#xff0c;以GPT-4、文心一言为代表的大模型&#xff08;LLM&#xff09;表现出了强大的逻辑推理能力&#xff0c;并能够很好地处理复杂任务&#xff0c;使得社会生产力得到了飞跃式提升。 面对大模型热度的持…

喜报 | 客户赞誉!获温州银行授予优秀供应商证书

近日&#xff0c;温州银行金融科技部在杭州、温州两地同时展开2022年度供应商表彰活动&#xff0c;意在鼓励先进、鼓舞干劲。擎创科技作为温州银行长期合作的供应商之一&#xff0c;凭借在智能运维领域精研的技术优势及“以客户成功为本”的服务价值观&#xff0c;深得客户青睐…

数画自研chatgpt,imagegpt人工智能语言技术,颠覆对AI绘画的认知

2023年1月1日&#xff0c;数画AI绘画又爆火了&#xff0c;这一次是数画团队自研了chatGPTimageGPT人工智能技术&#xff0c;值得人们注意的是&#xff0c;并非引用海外的openAI人工智能语言模型&#xff0c;而是完全自研首发的国产人工智能技术&#xff0c;数画团队来自于温州专…

使用SVG.Net生成svg格式文字图片

由于项目需要&#xff0c;需生成svg格式文字图片&#xff0c;网上的文档较少&#xff0c;在一番查阅之后成功实现。现记录下来&#xff0c;方便以后自己查阅&#xff0c;以及需要的人也可当做参考&#xff0c;水平不高&#xff0c;少喷。 主要运用到GitHub开源项目: svg.net 不…

利用ps导出svg(主要用于上传自定义图标到iconfont)

ps版本&#xff1a;2020 借鉴文章&#xff1a;https://blog.csdn.net/k912120/article/details/118787809 事情起因是我不想多此一举下个AI,本来想ps直接导出svg格式,但是导出来上传到iconfont后却是一片空白&#xff0c;相信很多人第一次都遇到过这种情况。 我一愣&#xff…

将图片转化成SVG格式(亲测可行)

1.准备好要转化的图片 可以看到左侧图片是一个jpg格式的&#xff0c;接下来我们就把它转化成svg格式; 2.打开SVG在线编辑器&#xff0c;把图片导入 我们可以打开SVG在线编辑器&#xff0c;在SVG编辑器中导入图片并根据我们需要的大小进行设置&#xff0c;如下图&#xff1a; …

微信图文消息中如何使用svg图片

微信图文消息无法上传svg格式图片,但是可以通过浏览器开发者工具进行hack 将svg图片使用文本编辑器打开,复制内容登录微信公众平台,新建图文消息输入正文的输入框中输入随意文字打开浏览器控制台(右键检查或按F12),找到步骤2输入文字对应的html标签在html标签右键,选择’Edit …

原腾讯QQ技术总监、T13专家,黄希彤被裁,原因竟是不愿意被 PUA ?

整理 | 朱珂欣 出品 | CSDN程序人生&#xff08;ID&#xff1a;coder_life&#xff09; 曾经风光无限的互联网“淘金地”&#xff0c;为无数技术人提供了造梦机会&#xff0c;也带领着一批程序员走向致富之路。然而&#xff0c;如今国内各大厂也在经历着“瘦身”运动。 据 T…

被裁后,前 Google 工程师揭露:Google Brain 没落的真实原因!

【CSDN 编者按】一周之前&#xff0c;为了更好地追赶 OpenAI&#xff0c;Google 做了一个重大的决定&#xff1a;Brain 和 Deepmind 合并&#xff0c;这件事引得很多人的关注与不解。最近波及其中的 Google Brain 高级工程师 Brian Kihoon Lee 于上周被解雇&#xff0c;他毕业于…

Meta 计划最快本周裁员数千人,网友:工作不易,且行且珍惜!

【CSDN 编者按】新的一轮裁员风波来袭&#xff0c;Meta 计划最快在本周再裁员数千人。 整理 | 王子彧 出品 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09; 伴随着 ChatGPT 的火爆出圈&#xff0c;AI 取代一些普通员工的讨论还没中止之际&#xff0c;各大企业的裁员举措…

裁员 10%,暴跌 14%,这家 IT 独角兽正在被抛弃!

来源&#xff1a;51CTO技术栈&#xff0c;撰稿 | 言征 流量一跌再跌&#xff0c;Stack Overflow 简直被狠狠地上了一课&#xff01; 3 月份 Stack Overflow 的流量下降了近 14%。该公司的 CEO 压力空前&#xff0c;甚至昨天决定裁员 10%&#xff01; 平均每月下降6%&#xff…

OpenAI 最新“神”操作:让 GPT-4 去解释 GPT-2 的行为!

整理 | 郑丽媛 出品 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09; 由 ChatGPT 掀起的这场 AI 革命&#xff0c;令人们感慨神奇的同时&#xff0c;也不禁发出疑问&#xff1a;AI 究竟是怎么做到这一切的&#xff1f; 此前&#xff0c;即便是专业的数据科学家&#xff…