2016-05-30 16 views
0

UITableViewRowActionタイトルの色を変更します。私は "ダウンロード"を赤で書いて欲しい。UITableViewRowActionタイトルテキストの色を変更します。

enter image description here

これは、ボタンのコードです - UITableViewRowActionたちはUIButtonクラスの外観を変更することにより、テキストの色を変更することができUIButtonのタイプですので

func tableView(tableView: UITableView, editActionsForRowAtIndexPath indexPath: NSIndexPath) -> [UITableViewRowAction]? { 


     let downloadButton = UITableViewRowAction(style: .Normal, title: "Download") { action, index in 

      var url: String 

      if self.searchController.active { 
       url = String(self.filteredPapers[indexPath.row].url) 
      } else { 
       url = String(self.papers[indexPath.row].url) 
      } 

      url = url.stringByReplacingOccurrencesOfString(" ", withString: "%20") 
      print(url) 
      let destination = Alamofire.Request.suggestedDownloadDestination(directory: .DocumentDirectory, domain: .UserDomainMask) 

      self.table.editing = false 

      Alamofire.download(.GET, url, destination: destination).response { _, _, _, error in 
       if let error = error { 
        print("Failed with error: \(error)") 
       } else { 
        print("Downloaded file successfully") 
       } 
      } 

     } 

     downloadButton.backgroundColor = UIColor(red:0.79, green:0.79, blue:0.81, alpha:1.0) 


     return [downloadButton] 

    } 
+0

'UITableViewRowAction'はそれを行うための(パブリック)APIはありません。私は、多くのスワイプ・フレームワーク(私は現在 'SWTableViewCell'を使用していますが、たくさんのオプションがあります)を使用することをお勧めします。 – sschale

+0

上記の質問からのこの回答は、あなたのために働くはずです:http://stackoverflow.com/a/36145706/5143847 – penatheboss

答えて

0

。次のコードを追加してくださいeditActionsForRowAtIndexPath

UIButton.appearance().setTitleColor(UIColor.redColor(), forState: UIControlState.Normal) 

OUTPUT:

enter image description here

+0

これはアプリケーションのすべてのボタンの色を変更しませんか? – Nathan

+0

はい、すべてUIButtonを変更します – Gokul

+1

@Nathan、UIButton.appearance(whenContainedInInstancesOf:[YourCustomUITableViewCell.self])によって表ビューセル内のボタンのみを変更します。setTitleColor(UIColor.redColor()、forState:UIControlState.Normal) –

関連する問題