Skip to main content
Code Review

Return to Answer

I would move more logic to an Enum CardInfo

struct CardInfo {
 enum CardState {
 case expanded
 case collapased
 
 var nextState : CardState {
 return self == .expandedisExpanded ? .collapased : .expanded
 }
 
 var isExpendedisExpanded: Bool { self == .expanded }
 }
 
 enum CardType {
 case annotaion
 case chat
 }
 
 var cardType: CardType
 var cardHandleHeight: CGFloat
 var cardState: CardState = .collapased
 
 mutating func updateToNextState() {
 cardState = cardState.nextState
 }
}

I would move more logic to an Enum CardInfo

struct CardInfo {
 enum CardState {
 case expanded
 case collapased
 
 var nextState : CardState {
 return self == .expanded ? .collapased : .expanded
 }
 
 var isExpended: Bool { self == .expanded }
 }
 
 enum CardType {
 case annotaion
 case chat
 }
 
 var cardType: CardType
 var cardHandleHeight: CGFloat
 var cardState: CardState = .collapased
 
 mutating func updateToNextState() {
 cardState = cardState.nextState
 }
}

I would move more logic to an Enum CardInfo

struct CardInfo {
 enum CardState {
 case expanded
 case collapased
 
 var nextState : CardState {
 return isExpanded ? .collapased : .expanded
 }
 
 var isExpanded: Bool { self == .expanded }
 }
 
 enum CardType {
 case annotaion
 case chat
 }
 
 var cardType: CardType
 var cardHandleHeight: CGFloat
 var cardState: CardState = .collapased
 
 mutating func updateToNextState() {
 cardState = cardState.nextState
 }
}
Source Link

I would move more logic to an Enum CardInfo

struct CardInfo {
 enum CardState {
 case expanded
 case collapased
 
 var nextState : CardState {
 return self == .expanded ? .collapased : .expanded
 }
 
 var isExpended: Bool { self == .expanded }
 }
 
 enum CardType {
 case annotaion
 case chat
 }
 
 var cardType: CardType
 var cardHandleHeight: CGFloat
 var cardState: CardState = .collapased
 
 mutating func updateToNextState() {
 cardState = cardState.nextState
 }
}
default

AltStyle によって変換されたページ (->オリジナル) /