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

合肥网站制作公司有哪些公司中国最厉害的网站建设公司

合肥网站制作公司有哪些公司,中国最厉害的网站建设公司,做盈利的设计素材网站有前途,视频怎么制作一、需求 在显示界面中#xff0c;数据变动#xff0c;界面刷新是非常常见的操作#xff0c;所以使用compose该如何实现呢#xff1f; 二、remember、mutableStateOf的使用 我们可以借助标题的两个概念 remember、mutableStateOf来完成。这里先不写定义#xff0c;定义…一、需求 在显示界面中数据变动界面刷新是非常常见的操作所以使用compose该如何实现呢 二、remember、mutableStateOf的使用 我们可以借助标题的两个概念 remember、mutableStateOf来完成。这里先不写定义定义看完也不是很明白从例子中去学习先看段code Composable fun AutoIncrementTest1() {var count 0Row(modifier Modifier.padding(20.dp),verticalAlignment Alignment.CenterVertically) {Text(text $count,Modifier.padding(horizontal 15.dp))Button(onClick { count }) {Text(text auto-increment )}} }这段代码是显示一个Text和一个Button点击Button后count变量自增然后在Text中显示出来。 但是实际测试的时候点击按钮Text显示数字是不会变化的原因是 Compose 并未跟踪此变量更改。也就是说这个变量不会触发界面的刷新。 为了解决上面的问题就可以使用 mutableStateOf 函数来看下修改后的代码 State 和 MutableState 是两个接口它们具有特定的值每当该值发生变化时它们就会触发界面更新重组。 setContent {ComposeTestTheme {Surface(color MaterialTheme.colors.background,) {AutoIncrementTest2()}} }Composable fun AutoIncrementTest2() {var count mutableStateOf(0)Row(modifier Modifier.padding(20.dp),verticalAlignment Alignment.CenterVertically) {Text(text ${count.value},Modifier.padding(horizontal 15.dp))//用到的时候需要.value获取Button(onClick { count.value }) {Text(text auto-increment )}} }我们把变量改成使用mutableStateOf函数但是我点击按钮Text的显示依然不会改变为啥呢 原因是在count改动的时候Surface接收的这个Composable函数就会重绘即将这个AutoIncrementTest2函数从头调用一遍每次调用时候走到第一行语句count就又赋值为0所以看起来就是没有改变依然是0。 在这种情况下假如还想记住上一次变量值就要用到remember来看下修改后的代码 setContent {ComposeTestTheme {Surface(color MaterialTheme.colors.background,) {AutoIncrementTest2()}} }Composable fun AutoIncrementTest3() {var count remember {mutableStateOf(0);}Row(modifier Modifier.padding(20.dp),verticalAlignment Alignment.CenterVertically) {Text(text ${count.value},Modifier.padding(horizontal 15.dp))//用到的时候需要.value获取Button(onClick { count.value }) {Text(text auto-increment )}} }这时候在点击按钮的时候Text上显示的就是自增的数字。 您可以将 remember 视为一种在组合中存储单个对象的机制就像私有 val 属性在对象中执行的操作一样。 当然我们还可以优化下上面每次使用count的时候都需要用.value来获取这里再引入一个关键字by修改后的代码如下 setContent {ComposeTestTheme {Surface(color MaterialTheme.colors.background,) {AutoIncrementTest2()}} }Composable fun AutoIncrementTest3() {var count by remember {mutableStateOf(0);}Row(modifier Modifier.padding(20.dp),verticalAlignment Alignment.CenterVertically) {Text(text ${count},Modifier.padding(horizontal 15.dp))Button(onClick { count }) {Text(text auto-increment )}} }使用by实现了属性委托就是属性的 set、get 的操作交给另一个对象器完成。我们可以间接读取 count 并将其设置为可变而无需每次都显式引用 MutableState 的 value 属性。 总结 mutableStateOf 表明某个变量是有状态的对变量进行监听当状态改变时可触发重绘。remember 记录变量的值使得下次绘制执行的时候不会再次进行初始化。 三、rememberSaveable 的使用 remember 函数仅在可组合项包含在组合中时起作用。旋转屏幕后整个 activity 都会重启所有状态都将丢失。当发生任何配置更改或者进程终止时也会出现这种情况。 可以使用 rememberSaveable而不使用 remember。这会保存每个在配置更改如旋转和进程终止后保留下来的状态。 var shouldShowOnboarding by rememberSaveable { mutableStateOf(true) }运行应用旋转屏幕更改为深色模式或者终止进程。除非您之前退出了应用否则系统不会显示初始配置屏幕。 参考文章 Compose中的remember和mutableStateOf Google官方教程
http://www.hkea.cn/news/14378614/

相关文章:

  • wordpress 多层分类徐州低价seo
  • 企业网站建设建设高碑店市建设局网站
  • 不要钱做网站软件搜索引擎网站推广怎么做
  • 怎么创建个人网站珠海企业网站建设价格
  • 网站收缩栏商丘做网站一般多少钱
  • 临邑网站开发网站动画特效
  • 重庆市建设工程信息网怎么查昆明百度seo
  • 公司网站建设哪家比较好室内装修设计在哪里学
  • 包头网站作风建设年自评材料重庆森林影评
  • 什么网站可以做项目贵州国高建设工程有限公司 网站
  • 苏州网站开发费用详情烟台专业网站建设公司
  • 网站建设与管理asp灰产项目网
  • 免费英文网站模板电影网站建设内容
  • 网页与网站设计 什么是属性建设企业网站官网u盾登录
  • php做的网站模板下载自己做网站导航页
  • 南充网站建设价格网站开发全科班
  • 绑定网站网站建设经验典型
  • 北京公司建设网站专业网站建设公司兴田德润在哪里
  • 个人备案网站 论坛电子商务网站建设实践报告
  • 做网站做好用的软件做美工用的网站
  • 做网站诈钱网站建设问题整改报告
  • 东莞网站网络推广公司网站开发公司php工资
  • 厦门做网站seo的中企动力是做什么的?
  • 抚顺 网站建设励志故事网站源码
  • 外贸建站应该怎么做十大永久免费网络游戏
  • 海淀做网站设计的公司wordpress访问密码
  • 平面设计接单网站有哪些网站建设外包平台
  • 顺的网站建设策划微软制作网页软件
  • 南阳网站建设推广佛山建设局官方网站
  • 网站设计培训机构用c 来建设网站