addTheme

public static void addTheme(String themeType, int lightStyleResId, int darkStyleResId)

添加主题(支持浅色和深色样式)

此方法用于添加自定义主题,支持为主题指定浅色和深色两种样式。系统会根据当前的深浅色模式自动应用对应的样式。

使用场景:

// 添加自定义主题(支持深浅色模式)
IMKitThemeManager.addTheme(
    "CUSTOM_THEME",
    R.style.MyCustomLightTheme,  // 浅色模式样式
    R.style.MyCustomDarkTheme    // 深色模式样式
);

// 添加单一样式主题(浅色和深色使用相同样式)
IMKitThemeManager.addTheme(
    "SIMPLE_THEME",
    R.style.MyTheme,  // 浅色模式样式
    R.style.MyTheme   // 深色模式样式(相同)
);

// 为已有主题追加额外样式(样式叠加)
IMKitThemeManager.addTheme(
    IMKitThemeManager.LIVELY_THEME,
    R.style.MyCustomOverrideLight,  // 浅色模式扩展样式
    R.style.MyCustomOverrideDark    // 深色模式扩展样式
);

// 切换到自定义主题(基于欢快主题)
IMKitThemeManager.changeCustomTheme(context, "CUSTOM_THEME", IMKitThemeManager.LIVELY_THEME);

注意事项:

  • 多次调用此方法添加同一主题时,样式会按顺序叠加应用
  • 后添加的样式属性会覆盖先前的同名属性
  • lightStyleResId 和 darkStyleResId 不能为 0
  • 主题会自动跟随系统深浅色模式切换

Parameters

themeType

主题类型标识(建议使用全大写下划线格式,如 "CUSTOM_BLUE_THEME")

lightStyleResId

浅色模式的主题样式资源 ID(如 R.style.YourLightTheme)

darkStyleResId

深色模式的主题样式资源 ID(如 R.style.YourDarkTheme)