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

外贸商城网站制作百度网页翻译

外贸商城网站制作,百度网页翻译,seo辉煌电商平台,changer网站建设文章目录 TextField() 简介TextField() 输入框例子TextField() 输入框添加装饰OutlinedTextField 边框样式输入框BasicTextField 输入框组件 总结 TextField() 简介 在 Compose 中,TextField() 组件表示文本输入框 ExperimentalMaterial3Api Composable fun TextF…

文章目录

  • TextField() 简介
    • TextField() 输入框例子
    • TextField() 输入框添加装饰
    • OutlinedTextField 边框样式输入框
    • BasicTextField 输入框组件
  • 总结

TextField() 简介

Compose 中,TextField() 组件表示文本输入框

@ExperimentalMaterial3Api
@Composable
fun TextField(value: String,                                    //输入框中显示的值onValueChange: (String) -> Unit,                  //当输入框的值发生改变时触发的回调函数modifier: Modifier = Modifier,                    //修饰符enabled: Boolean = true,                          //设置启用readOnly: Boolean = false,                        //是否可编辑textStyle: TextStyle = LocalTextStyle.current,    //文字样式label: @Composable (() -> Unit)? = null,          //输入框前显示的标签文本placeholder: @Composable (() -> Unit)? = null,    //输入框中未输入内容时显示的提示文本leadingIcon: @Composable (() -> Unit)? = null,    //在输入框开头显示的前置图标trailingIcon: @Composable (() -> Unit)? = null,   //在输入框结尾显示的后置图标supportingText: @Composable (() -> Unit)? = null,isError: Boolean = false,                         //当值是否有错误的时候,底部指示器和尾部图标以错误颜色显示visualTransformation: VisualTransformation = VisualTransformation.None, //输入框内的文本视觉keyboardOptions: KeyboardOptions = KeyboardOptions.Default,   //软件键盘选项keyboardActions: KeyboardActions = KeyboardActions.Default,   //当输入发出一个IME动作时,相应的回调被调用singleLine: Boolean = false,                                  //输入框是否只能输入一行maxLines: Int = Int.MAX_VALUE,                                //输入框所能输入的最大行数interactionSource: MutableInteractionSource = remember { MutableInteractionSource() },                                                                //用于监控组件状态shape: Shape = TextFieldDefaults.filledShape,                 //输入框外观形状colors: TextFieldColors = TextFieldDefaults.textFieldColors() //输入框颜色组
) 

TextField() 输入框例子

//用户名
var username by remember{ mutableStateOf("") }TextField(value = username,onValueChange = {username = it},label = { Text(text = "用户名")},leadingIcon ={Icon(imageVector        = Icons.Filled.AccountBox,contentDescription = stringResource(id = R.string.app_user_name))},modifier = Modifier.fillMaxWidth()
)/*string文件*/
<string name="app_user_name">用户名</string>

注:
var username by remember{ mutableStateOf(“”) }

by 关键字表示 属性代理,可直接获取 mutableStateOf(“”) 的 String类型username属性

remember 表示可以缓存创建 状态 ,避免 重组 造成的数据丢失

Icon 代表图标组件

TextField() 输入框添加装饰

Column {//用户名var username by remember{ mutableStateOf("") }//密码var password by remember{ mutableStateOf("") }//输入框TextField(value = username,onValueChange = {username = it},label = { Text(text = "用户名")},leadingIcon ={Icon(imageVector        = Icons.Filled.AccountBox,contentDescription = stringResource(id = R.string.app_user_name))},modifier = Modifier.fillMaxWidth())TextField(value = password,onValueChange = {password = it},label = { Text(text = "密码")},trailingIcon = {IconButton(onClick = { }) {Icon(painter = painterResource(id = R.mipmap.iconeye),contentDescription = stringResource(id = R.string.app_user_password))}},modifier = Modifier.fillMaxWidth())
}

注:
Column 表示 垂直布局

leadingIcon 添加前置小图标

trailingIcon 添加后置小图标,在后置小图标上添加了 IconButton ,用于响应用户点击

OutlinedTextField 边框样式输入框

带有边框的输入框,其他用法和TextField基本一样

var textName by remember { mutableStateOf("") }OutlinedTextField(value = textName,onValueChange = {textName = it},label = { Text(text = stringResource(id = R.string.app_user_name))},modifier = Modifier.fillMaxWidth()
)/*string文件*/
<string name="app_user_name">用户名</string>

BasicTextField 输入框组件

BasicTextField 是更低级的Compose组件,与 TextField、OutlinedTextField 不同之处就是拥有更多自定义效果。

TextField、OutlinedTextField不可以直接修改高度,如果修改高度,输入框会被截断,BasicTextField 就可以定制这样的需求

var textSearchName by remember { mutableStateOf("") }Box(modifier = Modifier.fillMaxWidth().background(Color(0xFFD3D3D3)),contentAlignment = Alignment.Center){BasicTextField(value = textSearchName,onValueChange = {textSearchName = it},decorationBox = { innerTextField ->Row(verticalAlignment = Alignment.CenterVertically,modifier = Modifier.padding(horizontal = 10.dp)) {Icon(imageVector = Icons.Filled.Search,contentDescription = null)Box(modifier = Modifier.padding(horizontal = 10.dp),contentAlignment = Alignment.CenterStart) {if (textSearchName.isEmpty()) {Text(text = "请输入查找的内容",style = TextStyle(color = Color(0,0,0,128)),modifier = Modifier.fillMaxWidth())}innerTextField()}if(textSearchName.isNotEmpty()){IconButton(onClick = { textSearchName = "" },modifier = Modifier.size(16.dp)) {Icon(imageVector =Icons.Filled.Close,contentDescription = null)}}}},modifier = Modifier.padding(horizontal = 10.dp).background(Color.White, CircleShape).height(40.dp).fillMaxWidth())
}	

注:
Box 相当传统view里面的 FrameLayout

Row 表示水平方向的 LinearLayout

总结

  1. TextField() 代表默认输入框
  2. OutlinedTextField 代表有表框的输入框
  3. BasicTextField 代表底层输入框,区别于 TextField()、OutlinedTextField 可以自定义输入框
http://www.tj-hxxt.cn/news/10423.html

相关文章:

  • wordpress首页模块排序权限修改黑帽seo
  • 免费素材网站pexels网站域名怎么注册
  • 网站建设用英语怎么说百度快速优化推广
  • 网站开发与服务合同范本seo网络搜索引擎优化
  • 网站建设公司的前景seo排名教程
  • 如何访问自己做的网站上海网站制作推广
  • 静宁县门户网成都百度seo推广
  • alexa全球网站排名昆明seo优化
  • 想自己做一个网站应该怎么弄免费域名注册服务网站
  • 常用搜索网站江门关键词排名工具
  • 四川省人民政府官网seo的工作原理
  • c语言做的网站有什么优缺点查网站排名
  • 网站活动策划怎么做网站建设明细报价表
  • 哈尔滨h5建站模板厦门网站制作
  • 怎样买空间做网站东莞寮步最新通知
  • 做网站论坛赚钱百度网站优化工具
  • 舆情通上海搜索优化推广
  • 建设部网站官网建筑施工合同百度商店应用市场
  • 响站怎么建设网站佛山百度seo点击软件
  • 2018做网站前景好么网络营销的策略包括
  • 成都网站公司网站建设百度代做seo排名
  • 网站建设的安全措施济宁seo推广
  • 工程合同模板安卓系统优化软件
  • 网站制作 徐州5118营销大数据
  • 帝国系统做网站地图一个新产品的营销方案
  • 江门桂城网站建设91关键词
  • 山东网站建设运营十堰seo优化
  • 深圳的知名网站设计有哪些2023年中国进入一级战备状态了吗
  • 做外贸网站平台个人网页设计作品欣赏
  • seo建站是什么推广产品的文案