스팀 앱 개발기 #86 - 보팅 리스트 관련 데이터 클래스 보완steemCreated with Sketch.

in kr-dev 커뮤니티3 years ago (edited)

시작하며...

보팅 리스트 화면 1차 구현을 완료했지만, 관련 데이터 클래스들의 보완이 필요하여 수정작업을 진행했습니다.


작업 개요

  • 도메인 모듈의 ActiveVote 데이터 클래스
  • 데이터 모듈의 ActiveVoteDTO 데이터 클래스
  • layout_vote_item.xml 레이아웃 수정

도메인 모듈의 ActiveVote 데이터 클래스

  • weight 필드의 데이터 타입을 String에서 Float로 수정
  • value 필드의 데이터 타입을 String에서 Float로 수정
data class ActiveVote(
    val voter: String,
    val weight: Float,
    val value: Float
) : java.io.Serializable {
    ...
}
  • weight 값을 퍼센트 포맷의 문자열로 읽기 위한 readWeightAsPercent() 메소드 추가
  • value 값을 달러 포맷의 문자열로 읽기 위한 readValueAsSTU() 메소드 추가
  • 업보트인지, 다운보트인지 판별하기 위한 isUpvote(), isDownvote() 메소드 추가

데이터 모듈의 ActiveVoteDTO 데이터 클래스

  • ActiveVote 객체 생성 코드 수정
  • 다운보트 판별 위한 isDownvote() 메소드 추가
fun isDownvote(): Boolean {
    return rshares?.toLongOrNull()?.let {
        when {
            (null == it) -> false
            (it < 0) -> true
            else -> false
        }
    } ?: false
}

layout_vote_item.xml 레이아웃 수정

  • ActiveVote 데이터 클래스 변경으로 인한 수정. 추가한 메소드 활용.

GitHub Commit


지난 스팀 앱 개발기

Sort:  
 3 years ago 

[광고] STEEM 개발자 커뮤니티에 참여 하시면, 다양한 혜택을 받을 수 있습니다.

Coin Marketplace

STEEM 0.04
TRX 0.32
JST 0.082
BTC 61656.65
ETH 1638.79
USDT 1.00
SBD 0.41