当前位置: 首页 > wzjs >正文

中国建设人才服务信息网是正规网站产品软文范例

中国建设人才服务信息网是正规网站,产品软文范例,网站建设属于哪一类商标,网站设计大概多少钱今天学习和实验一下Android 的compose UI,写一些很小的Demo实验。下面和css 布局有点相似性。 如Box 看起来像html 当中的 div ,compose UI 提供Modifier 很多设置。你会发现Text,Box,Row,Image等组件 都有这个属性。我们处理任务包括对齐布局&#xff0…

今天学习和实验一下Android 的compose UI,写一些很小的Demo实验。下面和css 布局有点相似性。
如Box 看起来像html 当中的 div ,compose UI 提供Modifier 很多设置。你会发现Text,Box,Row,Image等组件 都有这个属性。我们处理任务包括对齐布局,颜色处理,背景添加,圆角处理,渐变色,点击交互。

1.如建立一个Box,实现对齐

package com.example.bleui.viewimport androidx.compose.foundation.background
import androidx.compose.foundation.border
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.width
import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp@Preview
@Composable
fun AboutScreen() {Box(modifier = Modifier.fillMaxSize().background(color = Color.White)){Box(modifier = Modifier.width(100.dp).height(100.dp).background(color = Color.Blue).align(Alignment.BottomStart))Box(modifier = Modifier.width(100.dp).height(100.dp).background(color = Color.Red).align(Alignment.BottomEnd))}
}

尽量简单一点。这个新建一个填充的Box,背景白色,在它内部新建2个box 然后在底部进行对齐。 .align(Alignment.BottomEnd) 这个地方是底部对齐靠右边。 .align(Alignment.BottomStart) 是底部靠左边。出来的效果如下图
在这里插入图片描述

2.实现左右对齐布局 Row

在内部添加一个Row 实现左右对齐。这种和css space-between 十分相似。

package com.example.bleui.viewimport androidx.compose.foundation.background
import androidx.compose.foundation.border
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.width
import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp@Preview
@Composable
fun AboutScreen() {Box(modifier = Modifier.fillMaxSize().background(color = Color.White)){Row (horizontalArrangement = Arrangement.SpaceBetween,modifier = Modifier.fillMaxWidth().border(1.dp, color = Color.Red)){Box(modifier = Modifier.width(100.dp).height(100.dp).background(color = Color.Yellow))Box(modifier = Modifier.width(100.dp).height(100.dp).background(color = Color.Green))}Box(modifier = Modifier.width(100.dp).height(100.dp).background(color = Color.Blue).align(Alignment.BottomStart))Box(modifier = Modifier.width(100.dp).height(100.dp).background(color = Color.Red).align(Alignment.BottomEnd))}
}

在这里插入图片描述

3.使用实现左右对齐布局 Box

package com.example.bleui.viewimport androidx.compose.foundation.background
import androidx.compose.foundation.border
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.width
import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp@Preview
@Composable
fun AboutScreen() {Box(modifier = Modifier.fillMaxSize().background(color = Color.White)){Row (horizontalArrangement = Arrangement.SpaceBetween,modifier = Modifier.fillMaxWidth().border(1.dp, color = Color.Red)){Box(modifier = Modifier.width(100.dp).height(100.dp).background(color = Color.Yellow))Box(modifier = Modifier.width(100.dp).height(100.dp).background(color = Color.Green))}Box (modifier = Modifier.fillMaxWidth().border(1.dp, color = Color.Blue).padding(top = 100.dp)){Box(modifier = Modifier.width(100.dp).height(100.dp).background(color = Color.Yellow).align(Alignment.TopStart))Box(modifier = Modifier.width(100.dp).height(100.dp).background(color = Color.Green).align(Alignment.TopEnd))}Box(modifier = Modifier.width(100.dp).height(100.dp).background(color = Color.Blue).align(Alignment.BottomStart))Box(modifier = Modifier.width(100.dp).height(100.dp).background(color = Color.Red).align(Alignment.BottomEnd))}
}

在这里插入图片描述

出来的效果更加像绝对定位一样。左右两边布局可以通过Row 结合对齐SpaceBetween方式,或者Box 的对齐实现两边对齐的效果。

        Box (modifier = Modifier.fillMaxWidth().offset(x = 0.dp, y = 200.dp).border(1.dp, color = Color.Blue)){Box(modifier = Modifier.width(100.dp).height(100.dp).background(color = Color.Yellow).align(Alignment.TopStart))Box(modifier = Modifier.width(100.dp).height(100.dp).background(color = Color.Green).align(Alignment.TopEnd))}

其中使用box 当中offsex 更像移动对应位置一下,像固定一样坐标移动。

  Box (modifier = Modifier.fillMaxWidth().offset(x = 0.dp, y = 200.dp).border(1.dp, color = Color.Blue)

使用Modifier设置的时候,有时候会有先后情况,如果将border 提前,放offset在后,绘制出来效果就不一样。这一点在实验过程会感觉到差别。

4. Box 里面添加文本

box 里面可以放置文本 会用到很多。

        Box (modifier = Modifier.fillMaxWidth().offset(x = 0.dp, y = 200.dp).border(1.dp, color = Color.Blue)){Box(modifier = Modifier.width(100.dp).height(100.dp).background(color = Color.Yellow).align(Alignment.TopStart)){Text("A100")}Box(modifier = Modifier.width(100.dp).height(100.dp).background(color = Color.Green).align(Alignment.TopEnd)){Text("B100")}}

在这里插入图片描述

4.1 Box 里面的文本居中

尝试让文本居中 Modifier.align(Alignment.Center) 只要使用对齐方式进行对齐。Center 是水平和垂直居中。

        Box (modifier = Modifier.fillMaxWidth().offset(x = 0.dp, y = 200.dp).border(1.dp, color = Color.Blue)){Box(modifier = Modifier.width(100.dp).height(100.dp).background(color = Color.Yellow).align(Alignment.TopStart)){Text("A100", modifier =Modifier.align(Alignment.Center))}Box(modifier = Modifier.width(100.dp).height(100.dp).background(color = Color.Green).align(Alignment.TopEnd)){Text("B100", modifier =Modifier.align(Alignment.Center))}}

由此可见,Alignment的方式可以方便对齐里面元素。
在这里插入图片描述

5. Box 里面添加点击交互

如果我们希望给Box添加交互点击,使用Modifier提供的clickable 实现点击出来。

        Box (modifier = Modifier.fillMaxWidth().offset(x = 0.dp, y = 200.dp).border(1.dp, color = Color.Blue).clickable {println("click me")})

在这里插入图片描述

6. Box 里面添加背景

日常当中希望可以添加背景元素。Box可以实现对应背景添加。使用Image引用对应的位图实现。在Box 里面第一个元素实现对应背景添加。

       Box (modifier = Modifier.fillMaxWidth().offset(x = 0.dp, y = 200.dp).border(1.dp, color = Color.Blue).clickable {println("click me")}){Image(painter = painterResource(id = R.mipmap.login_bg_1),  // 替换为你的图片资源contentDescription = null,contentScale = ContentScale.Crop,modifier = Modifier.fillMaxWidth().height(100.dp))Box(modifier = Modifier.width(100.dp).height(100.dp).background(color = Color.Yellow).align(Alignment.TopStart)){Text("A100", modifier =Modifier.align(Alignment.Center))}Box(modifier = Modifier.width(100.dp).height(100.dp).background(color = Color.Green).align(Alignment.TopEnd)){Text("B100", modifier =Modifier.align(Alignment.Center))}}

在这里插入图片描述

7. Box的圆角处理

圆角处理是日常当中用得比较频繁。使用背景当中一个属性RoundedCornerShape 添加后背景就可以实现圆角效果。

            Box(modifier = Modifier.width(100.dp).height(100.dp).background(color = Color.Yellow,shape = RoundedCornerShape(24.dp)).align(Alignment.TopStart)){Text("A100", modifier =Modifier.align(Alignment.Center))}

在这里插入图片描述

8. Box的渐变色

使用background 当中linearGradient 处理

            Box(modifier = Modifier.width(100.dp).height(100.dp).background(brush = Brush.linearGradient(colors = listOf(Color.Blue, Color.Red),start = Offset.Zero,end =  Offset.Infinite)).align(Alignment.TopEnd)){Text("B100", modifier =Modifier.align(Alignment.Center))}

在这里插入图片描述

8. Box的渐变+圆角

使用clip 里面shape 属性,可以实现圆角效果。

            Box(modifier = Modifier.width(100.dp).height(100.dp).clip(shape = RoundedCornerShape(24.dp)).background(brush = Brush.linearGradient(colors = listOf(Color.Blue, Color.Red),start = Offset.Zero,end =  Offset.Infinite)).align(Alignment.TopEnd)){Text("B100", modifier =Modifier.align(Alignment.Center))}

在这里插入图片描述

Box 当中用到对齐,背景,颜色,渐变,描边,交互,都提供了对应处理。可以集中在Modifier 进行添加使用。今天的实验到此为止。

http://www.dtcms.com/wzjs/122574.html

相关文章:

  • 自己想弄个平台怎么弄seo网站优化方案
  • 个人网站建站申请百度指数查询移动版
  • 大兴模板网站建设网络营销10大平台
  • 网站** 教程今日nba战况
  • 20个外国平面设计网站百度在西安的公司叫什么
  • 打开浏览器的网站网页优化包括
  • wordpress没有备案seo外链代发
  • 重庆市建设厅网站首页网页制作代码html制作一个网页
  • 做企业网站项目yandex引擎
  • 宁波seo网络推广报价seo网络营销是什么意思
  • 网站 盈利新闻头条今日最新消息
  • 任何人任意做网站销售产品违法吗二级域名在线扫描
  • 河南省住房城乡和建设厅网站首页推广公司有哪些公司
  • 在线观看视频的免费网站百度网盘会员
  • ih5 做视频网站百度seo招聘
  • 做网站 广告费 步骤seo基础知识
  • 做简历网站app优化排名
  • 一个上线的网站需要怎么做培训心得体会300字
  • 上海营销平台网站建设百度推广一年收费标准
  • 建站之星做的网站如何导出外贸网站有哪些
  • 聊城网站设计咨询最新的新闻 今天
  • 帝国cms做漫画网站教程互联网营销案例分析
  • 咸宁 网站建设全球访问量top100网站
  • 做目录右内容网站百度关键词排名查询
  • 新闻网站开发论文四年级摘抄一小段新闻
  • 网站是广西住房和城乡建设厅网站空间费用一年多少
  • 苏州网站建设公司找哪家营销软文500字
  • 建网站 pdf防控措施持续优化
  • 公众号做网站三只松鼠搜索引擎营销案例
  • 好的外贸网站的特征临沂森拓网络科技有限公司