[技術文書][技術センター][iOS部][114啦]詳細ページツールバー

3159 ワード

需要説明
戻ってきます。左下隅はコレクションに戻ります。コレクション記事はコレクションに入ります。経験モジュールです。ログインが必要です。クリックしたら、有効数+1が必要です。登録しなくても大丈夫です。上に戻って、もう上に置いた状態であれば灰を置く。
住所が必要です
http://192.168.1.75/114la/220/114la_220/菗g=1&p=3_2_%E 6%99%AE%E 9%80%9 A%E 5%B 8%96
インターフェースの説明
星印記事
URL:http://114larc.com/z/api/1.0/android/2.0/markFav 要求方式:POST
  • 要求パラメータ説明
  • パラメータ名
    必ず選ぶ
    タイプ
    説明
    tid
    true
    要点
    ID
    タイプ
    true
    要点
    タイプ1は経験2は説明書3は工具4はマイクロショップです。
    op
    true
    ストリングス
    操作add星の標識delは星の標識をキャンセルします。
    cat_id
    false
    要点
    説明書チャプターID
  • 戻りパラメータ説明
  • パラメータ名
    タイプ
    説明
    success
    要点
    1成功のために、他は失敗です。
  • リターン結果
  • {
        "state": 1,
        "code": 0,
        "message": "",
        "data": {
            "success": 1
        }
    }
    
    役に立つ文章
    URL:http://114larc.com/z/api/1.0/android/2.0/markUseful 要求方式:POST
  • 要求パラメータ説明
  • パラメータ名
    必ず選ぶ
    タイプ
    説明
    tid
    true
    要点
    ID
    タイプ
    true
    要点
    タイプ1は経験2です。説明書3はツールです。
    op
    true
    ストリングス
    操作addはdelでキャンセルします。
    cat_id
    false
    要点
    説明書チャプターID
  • 戻りパラメータ説明
  • パラメータ名
    タイプ
    説明
    success
    要点
    1成功のために、他は失敗です。
  • リターン結果
  • {
        "state": 1,
        "code": 0,
        "message": "",
        "data": {
            "success": 1
        }
    }
    
    コアコード
    このツールはnibによって実現され、配置は直接nibによって付加された制約を見る。詳細ページから取得した記事情報に基づいて初期化を行います。
    func setupStarToolBar(_ pageInfo: [String:Any]) {
            starBtn.isEnabled = true
            zanBtn.isEnabled = true
            shareBtn.isEnabled = true
            scrollTopBtn.isEnabled = true
            
            tid = pageInfo["id"] as? Int ?? -1
            type = pageInfo["type"] as? Int ?? 3
            starBtn.isSelected = pageInfo["is_fav"] as? Bool ?? false
            zanBtn.isSelected = pageInfo["is_useful"] as? Bool ?? false
            usefulNum = pageInfo["useful_num"] as? Int ?? 0
            catId = pageInfo["cat_id"] as? Int
            usefulNumLabel.text = String.toRelativeNumberString(intNum: usefulNum)
            if usefulNum <= 0 {
                zanBtn.setImage(UIImage(named: "tool_bar_zan_normal"), for: UIControlState())
            } else {
                zanBtn.setImage(UIImage(named: "tool_bar_zan_num"), for: UIControlState())
            }
    //        usefulNumLabel.backgroundColor = UIColor.white
            
            if let dict = (pageInfo["pics"] as? [Any])?.first as? [String:Any] {
                shareImageUrl = dict["src"] as? String ?? ""
            }
        }
    
    表示または非表示:星印、点賛などのボタン。外部に呼び出します
    func showStarBtns() {
            starBtn.isHidden = false
            zanBtn.isHidden = false
            shareBtn.isHidden = false
            scrollTopBtn.isHidden = false
            usefulNumLabel.isHidden = false
        }
        
        func hideStarBtns() {
            starBtn.isHidden = true
            zanBtn.isHidden = true
            shareBtn.isHidden = true
            scrollTopBtn.isHidden = true
            usefulNumLabel.isHidden = true
        }
    
    直接にこのクラスで要求インターフェースを行い、プロキシを使用して詳細ページ要求を行っていません。関連するロジックはこのクラスにあります。