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

卖自己做的网站去哪优化关键词排名

卖自己做的网站去哪,优化关键词排名,html个人网页源码,哪里做网站比较快【Android Compose】ListView效果 1、Column、Row 和 Box2、LazyColumn和LazyRow3、Compose 中的状态4、ListView效果5、android-compose-codelabs Jetpack Compose 使用入门 Jetpack Compose 教程 Jetpack Compose 1、Column、Row 和 Box Compose 中的三个基本标准布局元素是 …

【Android Compose】ListView效果

  • 1、Column、Row 和 Box
  • 2、LazyColumn和LazyRow
  • 3、Compose 中的状态
  • 4、ListView效果
  • 5、android-compose-codelabs

Jetpack Compose 使用入门
Jetpack Compose 教程
Jetpack Compose


1、Column、Row 和 Box

Compose 中的三个基本标准布局元素是 Column、Row 和 Box 可组合项。

在这里插入图片描述

2、LazyColumn和LazyRow

androidx.compose.foundation.lazy.LazyColumn
androidx.compose.foundation.lazy.LazyRow
androidx.compose.foundation.lazy.items

3、Compose 中的状态

7. Compose 中的状态

  • mutableStateOf 函数,该函数可让 Compose 重组读取该 State 的函数
  • 如需在重组后保留状态,请使用 remember 记住可变状态
  • onClick 它不接受值,而接受函数
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
// ...@Composable
fun Greeting(...) {val expanded = remember { mutableStateOf(false) }ElevatedButton(onClick = { expanded.value = !expanded.value },) {Text(if (expanded.value) "Show less" else "Show more")}
}

4、ListView效果

https://gitee.com/xhbruce/XhAndroidDemo
在这里插入图片描述

package com.xhbruce.xhandroiddemoimport Message
import SampleData
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.activity.enableEdgeToEdge
import androidx.compose.animation.animateColorAsState
import androidx.compose.animation.animateContentSize
import androidx.compose.foundation.clickable
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.lazy.LazyColumn
import androidx.compose.foundation.lazy.items
import androidx.compose.material3.ElevatedButton
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Surface
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
import androidx.compose.runtime.setValue
import androidx.compose.ui.Modifier
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
import androidx.core.view.WindowCompat
import com.xhbruce.xhandroiddemo.ui.theme.XhAndroidDemoThemeclass MainActivity : ComponentActivity() {override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)enableEdgeToEdge()WindowCompat.setDecorFitsSystemWindows(window, true)setContent {XhAndroidDemoTheme {//PreviewGreeting()Conversation(SampleData.conversationSample)}}}
}@Composable
fun MessageCard(msg: Message) {// We keep track if the message is expanded or not in this// variablevar isExpanded by remember { mutableStateOf(false) }// surfaceColor will be updated gradually from one color to the otherval surfaceColor by animateColorAsState(if (isExpanded)MaterialTheme.colorScheme.primaryelseMaterialTheme.colorScheme.surface,)// We toggle the isExpanded variable when we click on this ColumnColumn(modifier = Modifier.clickable { isExpanded = !isExpanded }.fillMaxSize()) {Text(text = msg.author,color = MaterialTheme.colorScheme.secondary,style = MaterialTheme.typography.titleSmall)Spacer(modifier = Modifier.height(4.dp))Surface(shape = MaterialTheme.shapes.medium,shadowElevation = 1.dp,// surfaceColor color will be changing gradually from primary to surfacecolor = surfaceColor,// animateContentSize will change the Surface size graduallymodifier = Modifier.animateContentSize().padding(1.dp)) {Text(text = msg.body,modifier = Modifier.padding(all = 4.dp),// If the message is expanded, we display all its content// otherwise we only display the first linemaxLines = if (isExpanded) Int.MAX_VALUE else 1,style = MaterialTheme.typography.bodyMedium)}}
}@Composable
fun Conversation(messages: List<Message>) {LazyColumn {items(messages) { message ->MessageCard(message)}}
}@Preview
@Composable
fun PreviewMessageCard() {XhAndroidDemoTheme {Conversation(SampleData.conversationSample)}
}@Preview
@Composable
fun PreviewGreeting() {val expanded = remember { mutableStateOf(false) }ElevatedButton(onClick = { expanded.value = !expanded.value },) {Text(if (expanded.value) "Show less" else "Show more")}
}

5、android-compose-codelabs

git clone https://github.com/googlecodelabs/android-compose-codelabs.git

在这里插入图片描述

http://www.ds6.com.cn/news/6315.html

相关文章:

  • wordpress做自建站收录情况有几种
  • 汉源网站建设百度搜索电话
  • 莱州网站建设方案杭州今天查出多少阳性
  • 石家庄做网站和宣传的抖音seo排名优化软件
  • 河北省建设厅官方网站搜索引擎推广是什么意思
  • 如何用nat123做网站设计网站的公司
  • wordpress 插件 封面aso优化技巧
  • 企业没有网站怎样做推广方案全国教育培训机构平台
  • 古镇镇建网站公司怎样注册个人网站
  • 做网站的收益广告营销推广方案
  • 肇庆网站制作设计提高网站权重的方法
  • 苏州北京网站建设做一个微信小程序需要多少钱
  • 漳州专业做网站新公司怎么做网络推广
  • 日照哪里有做网站的sem优化师是做什么的
  • 网站设计与制新闻源
  • 微信公众平台如何绑定网站软文文案案例
  • 高端网站设计企业网站建设百度大搜推广开户
  • 电商详情做的最好看的网站今日大新闻
  • 做各国民宿租赁的网站制作网站的基本步骤
  • 濮阳市建站公司网站模板怎么建站
  • 做网站备案什么意思网络seo排名
  • 建网站服务商大学生网络营销策划书
  • 怎么自己在百度上做网站网站的推广方法
  • html网站开发教程营销培训课程
  • 做书架的网站品牌网络营销案例
  • 管理员界面wordpress百度排名优化工具
  • 哪个网站可以做ppt赚钱东莞网站优化公司
  • 个人如何申请域名seo建站技巧
  • 鉴定手表网站浙江网站建设平台
  • 重庆企业网站制作外包国际机票搜索量大涨