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

新乡网站seowordpress手机端底部菜单

新乡网站seo,wordpress手机端底部菜单,只用jsp做网站,建立站点的作用Copmose自定义颜色和主题切换 一起颜色的设置的都是在res/values/colors里面去做颜色, 但是当使用compose的时候,抛弃了使用了ui.theme底下的Color.kt和Theme.kt 但是默认使用的是MaterialTheme主题,里面的颜色字段不能定义,因此…

Copmose自定义颜色和主题切换

一起颜色的设置的都是在res/values/colors里面去做颜色, 但是当使用compose的时候,抛弃了使用了ui.theme底下的Color.kt和Theme.kt 但是默认使用的是MaterialTheme主题,里面的颜色字段不能定义,因此需要自定义这个:
我先查看MaterialTheme 里面的颜色主题是怎么定义的,然后照葫芦画瓢。
android官网 对应自定义的解释,可以根据官网来进行操作

Compose 中的自定义设计系统

CustomColorScheme.kt


import androidx.compose.runtime.Stable
import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.setValue
import androidx.compose.ui.graphics.Color@Stable
class CustomColorScheme(pureWhite: Color,pureBlack: Color,homeButtonBg: Color,textColor: Color,......// 根据项目需要去添加字段
) {var pureWhite by mutableStateOf(pureWhite)private setvar pureBlack by mutableStateOf(pureBlack)private setvar homeButtonBg by mutableStateOf(homeButtonBg)private setvar textColor by mutableStateOf(textColor)private set......fun update(colors: CustomColorScheme) {this.pureWhite = colors.pureWhitethis.pureBlack = colors.pureBlackthis.homeButtonBg = colors.homeButtonBgthis.textColor = colors.textColor......}fun copy() = CustomColorScheme(pureWhite,pureBlack,homeButtonBg,textColor,......)
}

然后再Theme.kt里面添加,DarkCustomColorScheme 和 LightCustomColorScheme实现自定义的颜色

// DarkColorScheme LightColorScheme 这个两个是系统默认的,使用的是MaterialTheme
private val DarkColorScheme = darkColorScheme(primary = Purple80,secondary = PurpleGrey80,tertiary = Pink80
)private val LightColorScheme = lightColorScheme(primary = Purple40,secondary = PurpleGrey40,tertiary = Pink40/* Other default colors to overridebackground = Color(0xFFFFFBFE),surface = Color(0xFFFFFBFE),onPrimary = Color.White,onSecondary = Color.White,onTertiary = Color.White,onBackground = Color(0xFF1C1B1F),onSurface = Color(0xFF1C1B1F),*/
)/** Color Scheme object */
// 黑夜
private val DarkCustomColorScheme = CustomColorScheme(// temp use lightpureBlack = NeutralBlack0100,pureWhite = PrimaryPureWhite,homeButtonBg = NeutralGrey8015,textColor = NeutralGrey2076,)白天
private val LightCustomColorScheme = CustomColorScheme(pureBlack = NeutralBlack0100,pureWhite = PrimaryPureWhite,homeButtonBg = NeutralGrey8015,textColor = NeutralGrey2076,)

之后继续添加下面的,这些

@Composable
fun ProvideAppColors(colors: CustomColorScheme, content: @Composable () -> Unit) {val colorPalette = remember {colors.copy()}colorPalette.update(colors)CompositionLocalProvider(LocalCustomColors provides colorPalette, content = content)
}// create static CompositionLocal
private val LocalCustomColors = staticCompositionLocalOf {DarkCustomColorScheme
}// 可以自己自定义添加
enum class CustomStyleScheme {// theme listDARK, LIGHT
}private val CustomStyleScheme.theme: Pair<ColorScheme, CustomColorScheme>get() = when (this) {CustomStyleScheme.DARK -> DarkColorScheme to DarkCustomColorSchemeCustomStyleScheme.LIGHT -> LightColorScheme to LightCustomColorScheme}// 这个添加了@Composable 说明是可组合函数,界面可以拿他进行设置颜色
@Composable
fun AppTheme(/* Can use 'var pallet by mutableStateOf(CustomStyleScheme.LIGHT)' to choose app theme*  now use isSystemInDarkTheme to judge dark or light*/darkTheme: Boolean = isSystemInDarkTheme(),
//    customTheme: CustomStyleScheme = AppTheme.pallet, //content: @Composable () -> Unit
) {val customTheme = when {darkTheme -> CustomStyleScheme.DARKelse -> CustomStyleScheme.LIGHT}val (colorScheme, customColors) = customTheme.themeProvideAppColors(colors = customColors) {MaterialTheme(colorScheme = colorScheme,typography = Typography,content = content)}
}/** AppTheme manager */
object AppTheme {val customColors: CustomColorScheme@Composableget() = LocalCustomColors.currentvar pallet by mutableStateOf(CustomStyleScheme.LIGHT)
}

看看默认生成的是怎么写的,跟上面的AppTheme差不多,只是我多了一个选择

@Composable
fun ExtTheme(darkTheme: Boolean = isSystemInDarkTheme(),// Dynamic color is available on Android 12+dynamicColor: Boolean = true,content: @Composable () -> Unit
) {val colorScheme = when {dynamicColor && Build.VERSION.SDK_INT >= Build.VERSION_CODES.S -> {val context = LocalContext.currentif (darkTheme) dynamicDarkColorScheme(context) else dynamicLightColorScheme(context)}darkTheme -> DarkColorSchemeelse -> LightColorScheme}val view = LocalView.currentif (!view.isInEditMode) {SideEffect {val window = (view.context as Activity).windowwindow.statusBarColor = colorScheme.primary.toArgb()WindowCompat.getInsetsController(window, view).isAppearanceLightStatusBars = darkTheme}}MaterialTheme(colorScheme = colorScheme,typography = Typography,content = content)
}
http://www.yayakq.cn/news/499708/

相关文章:

  • 哪些网站做的美诺盾网站建设
  • apache设置网站网址餐饮网站建设有什么好处
  • 网站加速器推荐宁波公司注销流程
  • 网站内部链接上海企业网站制作多少钱
  • 北京网站建设的公司宁波哪家建网站hao
  • 网上下载的网站后台安全吗品牌词类的网站怎么做优化
  • 做云盘网站哪个好建设信用卡在网站挂失几步
  • 把网站从空间删除百度热门关键词排名
  • 开发网站的基本流程五个阶段简易做网站的软件
  • 电商网站怎么做seo提升网站安全
  • 好看开源企业网站模板wordpress积分下载
  • 建设网站分析广州高端网站建设公司
  • 金融网站素材外汇黄金网站建设
  • 网站系统类型网课营销方案
  • 织梦网站面包屑导航怎么做seo关键词分析
  • 做网站用什么语音标识导视设计公司官网
  • wordpress学做网站怎样在网上做宣传
  • 网站模版与模板的使用创意平面设计作品图片
  • 厦门做网站公司哪家好免费logo设计生成器下载
  • 高端装饰公司网站设计外贸做网站用什么
  • 空包网站建设属于哪类贵阳微信小程序制作开发
  • 扬州住房城乡建设局网站如何进入google网站
  • 商务网站建设与维护 ppt网站变灰色代码
  • 网站改版多久恢复如何申请企业域名
  • 响应式网站模板下载免费友情链接发布平台
  • 比格设计网站官网wordpress小说站主题
  • 营销类网站推荐网站建站建设价格
  • 一个网站需要多大的空间装修设计公司快餐店
  • 公司网站建设费用包括河北建设执业资格注册中心网站
  • wordpress iis建站网络营销活动策划方案