Tiago Nunes
05/21/2021, 4:03 PMexpect enum class ImageTargetType {
USER,
DEVICE;
val code: String
}
androidMain:
actual enum class ImageTargetType(
actual val code: String,
@DrawableRes val defaultImageResId: Int?,
) {
USER("User", R.drawable.ic_default_user),
DEVICE("Device", null),
}
This is what I wanted:
commonMain:
expect enum class ImageTargetType(val code: String) {
USER("User"),
DEVICE("Device);
}
androidMain:
actual enum class ImageTargetType(
@DrawableRes val defaultImageResId: Int?,
) {
USER(R.drawable.ic_default_user),
DEVICE(null),
}
russhwolf
05/21/2021, 4:26 PM// common
enum class CommonImageTargetType(val code: String) {
USER("User"),
DEVICE("Device);
}
// android
enum class AndroidImageTargetType(
val commonImageTargetType: CommonImageTargetType,
@DrawableRes val defaultImageResId: Int?,
) {
USER(CommonImageTargetType.USER, R.drawable.ic_default_user),
DEVICE(CommonImageTargetType.DEVICE, , null),
}
Tiago Nunes
05/21/2021, 6:38 PMrusshwolf
05/21/2021, 6:40 PMfun CommonImageTargetType.toAndroidImageTargetType() = when { ... }
Tiago Nunes
05/21/2021, 6:46 PM