我试图告诉我的模型返回枚举类型的字符串,这样我就可以在前端正确地设置我的图像。我对来自CSharp背景的快速和快速的用户界面相当陌生。
struct PlayerRankingViewModel : Identifiable {
var id: UUID
var PlayerId : Int
var RankingType : Int
var RankingTypeImage : String
var FirstName:String
var LastName : String
var Reps: Decimal
var Weight: Decimal
var Seconds:Decimal
var DistanceFt:Decimal
var DistanceInches:Decimal
enum RankingTypes :Int{
case BAH = 1
case PU = 2
case TB = 3
case BP = 4
case OP = 5
case PUH = 6
case Bike = 7
case TwentyFiveYard = 8
case OneFiftyYard = 9
case Jumps = 10
case VJ = 11
case BroadJump = 12
case FrontSquat = 13
case HangClean = 14
}
init(id: UUID = UUID() ,PlayerId:Int,RankingType:Int,RankingTypeImage:String,
FirstName:String,LastName:String, Reps:Decimal,
Weight:Decimal,Seconds:Decimal,DistanceFt:Decimal,
DistanceInches:Decimal){
self.id = id
self.PlayerId = PlayerId
self.RankingType = RankingType
self.RankingTypeImage = ConvertExerciseTypeToImage(by: RankingType)
self.FirstName = FirstName
self.LastName = LastName
self.Reps = Reps
self.Weight = Weight
self.Seconds=Seconds
self.DistanceFt = DistanceFt
self.DistanceInches = DistanceInches
}
这是正在进行对话的函数
func ConvertExerciseTypeToImage(by ExerciseType: Int) -> String {
if(ExerciseType == RankingTypes.Bike.rawValue)
{
return("bicycle")
}
}}
我的主要问题是如何在样例数据部分传递它
extension PlayerRankingViewModel {
static var sampleData : [PlayerRankingViewModel] {
[
PlayerRankingViewModel(PlayerId:2,RankingType:RankingTypes.BP.rawValue,
RankingTypeImage What Do I put here?? : ,FirstName: "Dazy",
LastName:"Johnstone" ,Reps: 56.39, Weight:
125.00,Seconds:0.00,DistanceFt:0.00,DistanceInches:0.00)
]
正如您所看到的,我不确定如何将值放入RankingTypeImage中,或者这是实现这一点的最佳方式吗?我应该只返回一个图像。我想我正在寻找打字转换器的最佳实践,我来自一个尖锐的背景。
在前端,我可以显示基于学生正在做的练习的图像?
1条答案
按热度按时间3htmauhk1#
您可以在枚举中正确地进行转换
请考虑SWIFT的命名约定,即变量、函数和枚举大小写以小写字母开头。
在枚举中,在指定第一个整数值后将推断后续整数值