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

银行收取网站建设费的会计科目wordpress 会员中心

银行收取网站建设费的会计科目,wordpress 会员中心,wordpress首页页面,电商网站建设需求分析书目录 一、 6、Card及ConstraintLayout线性布局 5、导航数组 新版 4、导航控件 旧版 3、序列化数据初始化 2、Column、Row、Image最基本的修饰 1、debug页面切换Log 一、 6、Card及ConstraintLayout线性布局 //定义单独的机器人单独一行的卡片 Composable fun RobotCar…

目录

一、

6、Card及ConstraintLayout线性布局

5、导航数组 新版

4、导航控件 旧版

3、序列化数据初始化

2、Column、Row、Image最基本的修饰

1、debug页面切换Log


一、

6、Card及ConstraintLayout线性布局

//定义单独的机器人单独一行的卡片
@Composable
fun RobotCard(robot: Robot,navController:NavController){Card(modifier = Modifier.fillMaxWidth().wrapContentHeight().padding(5.dp),colors = CardDefaults.elevatedCardColors(contentColor = Color.Green, containerColor = Color.Blue),elevation = CardDefaults.elevatedCardElevation(defaultElevation = 3.dp)){ConstraintLayout(modifier= Modifier.fillMaxWidth()) {val (imageRef,nameRef,descRef) = remember{createRefs()}val vguideLine = createGuidelineFromStart(0.3f)val hguideLine = createGuidelineFromTop(0.4f)Image(modifier= Modifier.constrainAs(imageRef) {top.linkTo(parent.top)bottom.linkTo(parent.bottom)start.linkTo(parent.start)end.linkTo(vguideLine)}.clickable {
//                    val robotStr = Gson().toJson(robot)
//                    navController.na},painter = painterResource(id = robot.icon), contentDescription = robot.name )Text(modifier = Modifier.constrainAs(nameRef){top.linkTo(parent.top)bottom.linkTo(hguideLine)start.linkTo(vguideLine)end.linkTo(parent.end)},text = robot.name,fontSize = 18.sp)Text(modifier = Modifier.constrainAs(descRef){top.linkTo(hguideLine)bottom.linkTo(parent.bottom)start.linkTo(vguideLine)end.linkTo(parent.end)},text = robot.description,fontSize = 20.sp)}}
}

5、导航数组 新版

package com.example.uiapp.ui.screen
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.padding
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.MoreVert
import androidx.compose.material3.BottomAppBar
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.Icon
import androidx.compose.material3.IconButton
import androidx.compose.material3.NavigationBarItem
import androidx.compose.material3.Scaffold
import androidx.compose.material3.Text
import androidx.compose.material3.TopAppBar
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.navigation.NavHostController
import androidx.navigation.compose.NavHost
import androidx.navigation.compose.composable
import androidx.navigation.compose.rememberNavController
import com.example.uiapp.ui.Component.MenuViews
import kotlinx.coroutines.launch@Composable
fun NavigationGraphScreen(navController: NavHostController) {NavHost(navController = navController, startDestination = "home") {composable(route = "home") {HomeScreen()}composable(route = "config") {ConfigScreen()}composable(route = "help") {HelpScreen()}}
}
@OptIn(ExperimentalMaterial3Api::class)
@Composable
fun MainScreen2() {val navController:NavHostController= rememberNavController()val stateHolder= rememberState()Scaffold (
//        topBar ={
//        TopAppBar(
//            navigationIcon = {
//                IconButton(onClick = {
//                    stateHolder.scope.launch {
//                        stateHolder.drawerState.open()
//                    }
//                }) {
//                    Icon(stateHolder.currentScreen.value.icon, contentDescription = "${stateHolder.currentScreen.value.route}")
//                }
//            },
//            title ={
//                Text(stateHolder.currentScreen.value.title)
//            },
//            actions = {
//                IconButton(onClick = {
//                    stateHolder.expanded.value=!stateHolder.expanded.value;
//                }) {
//                    Icon(Icons.Default.MoreVert, contentDescription ="more" )
//                    MenuViews(stateHolder.expanded,stateHolder.currentScreen)
//
//                }
//            }
//        )}
//        ,bottomBar = {BottomAppBar {screens.forEach{NavigationBarItem(selected = navController.currentDestination?.route==it.route,onClick = {navController.navigate(it.route)},icon = {Icon(it.icon, contentDescription = "null")})}}}){Box(modifier = Modifier.padding(it)){NavigationGraphScreen(navController)}}
}

不过这个只有底部导航栏

4、导航控件 旧版

代码于Day02test03

@Preview
@Composable
fun MainScreen(){
//    val currentScreen:MutableState<Screen> = remember { mutableStateOf(Screen.Homepage) }
//    //细节,在这里currentScreen后面写上这个类型代表也可以是其他页面
//    val expanded = remember { mutableStateOf(false) }
//    val drawerState= rememberDrawerState(initialValue = DrawerValue.Closed)
//    val scope= rememberCoroutineScope()val stateHolder= rememberState()Scaffold(topBar={TopViews(stateHolder)},bottomBar={BottomViews(stateHolder.currentScreen)},floatingActionButton = {FloatingViews(stateHolder)},snackbarHost = {}) {Box(modifier = Modifier.padding(it)){//currentScreen.value.loadScreen.invoke()DrawViews(stateHolder.drawerState,currentScreen=stateHolder.currentScreen)}}
}
@Composable
@OptIn(ExperimentalMaterial3Api::class)
fun TopViews(stateHolder: StateHolder){TopAppBar(navigationIcon = {IconButton(onClick = {stateHolder.scope.launch {stateHolder.drawerState.open()}}) {Icon(stateHolder.currentScreen.value.icon, contentDescription = "${stateHolder.currentScreen.value.route}")}},title ={Text(stateHolder.currentScreen.value.title)},actions = {IconButton(onClick = {stateHolder.expanded.value=!stateHolder.expanded.value;}) {Icon(Icons.Default.MoreVert, contentDescription ="more" )MenuViews(stateHolder.expanded,stateHolder.currentScreen)}})
}
@Composable
fun BottomViews(currentScreen:MutableState<Screen>){BottomAppBar {screens.forEach{NavigationBarItem(selected = currentScreen.value==it,label = {Text(it.title, fontSize = 20.sp)},onClick = {currentScreen.value=it}, icon = {Icon(it.icon, contentDescription = "${it.route}")})}}}
@Composable
fun FloatingViews(stateHolder: StateHolder){FloatingActionButton(modifier = Modifier.clip(CircleShape),containerColor = Color.White,onClick = {stateHolder.currentScreen.value= Screen.Homepage}) {//tintIcon(Icons.Default.Home, contentDescription = "home")}
}
@Composable
fun DrawViews(drawerState: DrawerState, currentScreen: MutableState<Screen>){ModalNavigationDrawer(drawerState = drawerState,drawerContent = {Column (modifier = Modifier.width(300.dp).fillMaxHeight().background(Color.Black)){DrawerHead()DrawerBottom(drawerState,currentScreen)}}) {currentScreen.value.loadScreen()}
}
@Preview
@Composable
fun DrawerHead(){ConstraintLayout(modifier = Modifier.width(300.dp).height(200.dp).background(Color.Green)){val (imageRef,titleRef,contentRef)= remember { createRefs()}createVerticalChain(titleRef,contentRef, chainStyle = ChainStyle.Spread)val hGuideLine = createGuidelineFromStart(0.2f)val vGuideLine = createGuidelineFromTop(0.5f)Image(painter = painterResource(id=android.R.mipmap.sym_def_app_icon),contentDescription = "image", modifier = Modifier.constrainAs(imageRef){top.linkTo(parent.top)bottom.linkTo(parent.bottom)start.linkTo(parent.start)end.linkTo(hGuideLine)})Text("客人", fontSize = 20.sp, modifier = Modifier.constrainAs(titleRef){top.linkTo(parent.top)bottom.linkTo(vGuideLine)start.linkTo(hGuideLine)end.linkTo(parent.end)})Text(text = "这个人很懒",fontSize = 18.sp,modifier = Modifier.constrainAs(contentRef) {top.linkTo(vGuideLine)bottom.linkTo(parent.bottom)start.linkTo(hGuideLine)end.linkTo(parent.end)})}}@Composable
fun DrawerBottom(drawerState: DrawerState,currentScreen:MutableState<Screen>){val scope= rememberCoroutineScope()Column(modifier = Modifier.width((300.dp))) {screens.forEach{NavigationDrawerItem(colors = NavigationDrawerItemDefaults.colors(selectedIconColor = Color.Red,unselectedIconColor = Color.White,selectedTextColor = Color.Red,unselectedTextColor = Color.White,selectedBadgeColor = Color.DarkGray,unselectedBadgeColor = Color.Black),icon={Icon(it.icon, contentDescription = it.route)},label = {Text(it.title, fontSize = 24.sp)},selected = it==currentScreen.value,onClick = {currentScreen.value=itscope.launch{drawerState.close()}})}}}

3、序列化数据初始化

data class Student(val id:String,val name:String,val gender:String,val email:String): Parcelable {constructor(parcel: Parcel) : this(parcel.readString()!!,parcel.readString()!!,parcel.readString()!!,parcel.readString()!!) {}override fun writeToParcel(p0: Parcel, p1: Int) {p0.writeString(id)p0.writeString(name)p0.writeString(gender)p0.writeString(email)}override fun describeContents(): Int =0companion object CREATOR : Parcelable.Creator<Student> {override fun createFromParcel(parcel: Parcel): Student {return Student(parcel)}override fun newArray(size: Int): Array<Student?> {return arrayOfNulls(size)}}
}

利用Parcelable,也可以参考Android笔记【18】关于数据传输的三份代码,里面记录了不同方法的使用,但对于这份只是放了代码,后续会有更多深读。

它写好参数继承接口之后写好构造器writeToParcel后,会自动报错生成实现后面的抽象函数和伴随对象。

2、Column、Row、Image最基本的修饰

Column(modifier = Modifier.fillMaxSize(), // 使 Column 填满整个可用空间verticalArrangement = Arrangement.spacedBy(8.dp), // 子组件之间的垂直间距horizontalAlignment = Alignment.CenterHorizontally // 子组件的水平对齐方式) {Text("Item 1")Text("Item 2")Text("Item 3")}
Row(
modifier = Modifier
.fillMaxWidth()
.padding(60.dp), // 给 Row 添加内边距
verticalAlignment = Alignment.CenterVertically, // 垂直居中对齐
horizontalArrangement = Arrangement.SpaceBetween // 子组件之间的水平间距
) {Text(text = "Item 1")Button(onClick = { /* 处理点击事件 */ }) {Text("Button 1")}Text(text = "Item 2")Button(onClick = { /* 处理点击事件 */ }) {Text("Button 2")}
}

 区别:

  • Arrangement.SpaceBetween:

    • 子元素的第一个和最后一个元素与容器的边缘对齐。
    • 子元素之间的空间被均匀分配,但容器的两端没有额外的空间。
    • 例如,如果有三个元素,空间只分配在它们之间。
  • Arrangement.SpaceEvenly:

    • 所有子元素之间的空间是均匀的,包括容器的边缘。
    • 第一个和最后一个元素与容器边缘之间的空间与元素之间的空间相等。
    • 例如,如果有三个元素,容器的两端也会有与子元素之间相同的间距。
Row(modifier = Modifier.padding(all = 8.dp)) {Image(painter = painterResource(R.drawable.profile_picture),contentDescription = null,modifier = Modifier.size(40.dp).clip(CircleShape).border(1.5.dp, MaterialTheme.colorScheme.primary, CircleShape))Spacer(modifier = Modifier.width(8.dp))
}
// We toggle the isExpanded variable when we click on this Column
Column(modifier = Modifier.clickable { isExpanded = !isExpanded }) {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,) {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)}
}

用那个:

var isExpanded by remember { mutableStateOf(false) }

Android笔记【1】这里面讲了

val state by remember { mutableStateOf(默认值) }
这种方式使用了 Kotlin 的委托属性(delegated properties)。这里的 state 是一个 Int 类型的可读写属性,直接代表 mutableStateOf 的值。你可以直接使用 state 进行读写,而无需使用 .value。

1、debug页面切换Log

open class BaseActivity : ComponentActivity() {override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)makeLog("${this.localClassName}-->onCreate")}override fun onStart() {super.onStart()makeLog("${this.localClassName}-->onStart")}override fun onResume() {super.onResume()makeLog("${this.localClassName}-->onResume")}override fun onPause() {super.onPause()makeLog("${this.localClassName}-->onPause")}override fun onStop() {super.onStop()makeLog("${this.localClassName}-->onStop")}override fun onDestroy() {super.onDestroy()makeLog("${this.localClassName}-->onDestroy")}private fun makeLog(log:String){Log.d("TAG",log)}
}

注意:那这样其他页面就不是继承componentActivity了,而是继承BaseActivity哈~

DownLoad 音乐播放器

music里面放骰子

Day01在Practice里面  (05_06withcontext自写音乐播放器)(app彩票生成器)( lifecycledemo跳转)(serializable 数据传递)

Day02(uiapp页面跳转草稿 ,day04test02重写,xinlitest草稿)

Day03 RobotCard

Day04(test02 parceble数据传输、页面跳转)(test03执行后退)(Looper test04) (test05test06货币转换)

Day05  聊天机器人

Day07contentProvider room  mirgrate(书上有三种迁移,我的代码没完全)work1(坏了)

Day06GoogleUI

Day08两种weChat版本

Day09chat+room test03可以做到 贝儿的综合体世界

day10

DL 1  FakeWe-Chat Master 可以运行啦 打算做一个持久化 没做成功

          project123  做一个线上购物软件,但获取不到fireBase里面的数据。。。

DL  FakeWe-Chat Master  可以运行 改了搜索框

     


文章转载自:

http://EoBN4xZX.ptxhj.cn
http://tdkH6aEV.ptxhj.cn
http://HjXQLpkl.ptxhj.cn
http://tkPA46tn.ptxhj.cn
http://SAxdxGkE.ptxhj.cn
http://pQQ6CY5L.ptxhj.cn
http://vUoRjCFm.ptxhj.cn
http://moDZJ3W3.ptxhj.cn
http://C2iYdvhn.ptxhj.cn
http://yO3QyhP2.ptxhj.cn
http://BH2w0h80.ptxhj.cn
http://GLOLL3Lf.ptxhj.cn
http://bAzJHtkR.ptxhj.cn
http://IIzNyBuH.ptxhj.cn
http://LGE5pd7X.ptxhj.cn
http://t7jZvBTa.ptxhj.cn
http://umOLoAxp.ptxhj.cn
http://KQbJp2vJ.ptxhj.cn
http://w3YIiAOs.ptxhj.cn
http://WEiS7AV1.ptxhj.cn
http://oaENONkJ.ptxhj.cn
http://VCkLpfNv.ptxhj.cn
http://fQn8YFYI.ptxhj.cn
http://UEoRQNSJ.ptxhj.cn
http://UqQYyv5P.ptxhj.cn
http://T3JhkGCR.ptxhj.cn
http://0d4UTxji.ptxhj.cn
http://irYC7AMN.ptxhj.cn
http://OWavDZog.ptxhj.cn
http://kggsSKYz.ptxhj.cn
http://www.dtcms.com/wzjs/780537.html

相关文章:

  • 如何做论坛网站 知乎淘宝店可以做团购的网站吗
  • 芙蓉建设官方网站网站做分站
  • 网站dns设置淮南网站推广
  • 做自己的程序设计在线测评网站广告设计公司宣传文案
  • 扒站wordpress主题网页微博登录
  • 网站系统外贸seo推广方法
  • 手机型网站自己开网店怎么运营
  • 仿摄影网站网站轮播图教程
  • 自己做网站需要什么软件怎么做网页的二维码
  • 手机nfc网站开发云商网络综合服务
  • 购物网站 英文介绍科技之星
  • 公司做网站的申请漯河做网站公司
  • 百度可以做网站吗金坛网站优化
  • 苏州吴中网站建设wordpress模板页面
  • 学校建设门户网站的好处个人简历自我评价怎么写
  • 网站开发电脑高端网站设计教程
  • 中文小说网站建设与维护php网站的数据库怎么做备份
  • 找合伙做网站的知名的网页制作公司服务好
  • 建站之星和凡科建站哪个系统好seo资源网
  • 云南网站备案做网盘网站的成本
  • 辽宁网站建设培训班江西省城乡建设厅建设网站
  • cms网站开发涉及的知识怎么在网站上做模式题库
  • 从事网站建设延吉哪家网站建设公司好
  • 纯html网站模板物流网信息平台
  • 安全狗网站白名单指什么知名网站建设在哪里
  • 怎么查网站是不是百度做的广州城乡建设局
  • 网站建设冫金手指谷哥十四网店推广的目的有哪些
  • 智能建站系统开发忘记网站后台账号
  • 网站建设类论文银川网站建设怎么样
  • 做养生的网站多吗wordpress客户管理