【Swift】API 이용 앱의 샘플 코드(Storyboard 미사용, PureLayout)

개요



Yahoo 경매의 API를 2개 이용한 간단한 앱의 샘플 코드입니다.

카테고리 정보 API에서 카테고리 목록을 얻고,
TableView에 '카테고리 이름, 제품 수'를 표시합니다.

말단 카테고리의 경우는 상품 목록 API 로 상품 일람을 취득해,
CollectionView에 '상품 이미지, 상품 이름, 가격, 남은 시간, 입찰 수'를 표시합니다.

github



결과



サンプル

Auto Layout 설정


  • tableViewCell
  •     private func addConstraints() {
    
            categoryLabel.autoAlignAxisToSuperviewAxis(.Horizontal)
            categoryLabel.autoPinEdgeToSuperviewEdge(.Leading, withInset: 15.0)
            categoryLabel.autoPinEdgeToSuperviewEdge(.Trailing, withInset: 15.0)
        }
    
  • collectionViewCell
  •     private func addConstraints() {
            itemImageView.autoPinEdgeToSuperviewEdge(.Top, withInset: 2)
            itemImageView.autoPinEdgeToSuperviewEdge(.Left, withInset: 2)
            itemImageView.autoPinEdgeToSuperviewEdge(.Right, withInset: 2)
    
            titleLabel.autoPinEdge(.Top, toEdge: .Bottom, ofView: itemImageView, withOffset: 3.0)
            titleLabel.autoPinEdgeToSuperviewEdge(.Left, withInset: 2)
            titleLabel.autoPinEdgeToSuperviewEdge(.Right, withInset: 2)
    
            priceLabel.autoPinEdge(.Top, toEdge: .Bottom, ofView: titleLabel, withOffset: 3.0)
            priceLabel.autoPinEdgeToSuperviewEdge(.Left, withInset: 2)
            priceLabel.autoPinEdgeToSuperviewEdge(.Right, withInset: 2)
    
            endTimeLabel.autoPinEdge(.Top, toEdge: .Bottom, ofView: priceLabel, withOffset: 3.0)
            endTimeLabel.autoPinEdgeToSuperviewEdge(.Left, withInset: 2)
            endTimeLabel.autoPinEdgeToSuperviewEdge(.Bottom, withInset: 5)
    
            bidLabel.autoPinEdge(.Top, toEdge: .Bottom, ofView: priceLabel, withOffset: 3.0)
            bidLabel.autoPinEdge(.Left, toEdge: .Right, ofView: endTimeLabel, withOffset: 10.0)
            bidLabel.autoPinEdgeToSuperviewEdge(.Bottom, withInset: 5)
    
        }
    

    좋은 웹페이지 즐겨찾기