2015-04-17 15 views
15

पर गतिविधि संकेतक रंग बदलना मैं अपने गतिविधि संकेतक को काले रंग जैसे कस्टम रंग में बदलने की कोशिश कर रहा हूं। हालांकि यह बिल्कुल लागू नहीं प्रतीत होता है और मानक सफेद रंग अभी भी है।ब्लैक

मैंने जो किया है वह एक UIView बना रहा है और एक उपव्यू के रूप में एक गतिविधि संकेतक जोड़ा गया है और फिर इसे तालिका FooterView में जोड़ा गया है।

मैं गतिविधि सूचक रंग कैसे बदल सकता हूं?

viewDidLoad:

let footerView = UIView(frame: CGRectMake(0, 0, self.view.frame.size.width, 40)) 
    footerView.backgroundColor = UIColor(rgba: "#f6f7f9") 
    var actInd: UIActivityIndicatorView = UIActivityIndicatorView() 
    actInd.color = UIColor.blackColor() 
    actInd.frame = CGRectMake(self.view.frame.size.width/2-10, 0.0, 20.0, 20.0); 

    actInd.activityIndicatorViewStyle = 
     UIActivityIndicatorViewStyle.WhiteLarge 
    footerView.addSubview(actInd) 
    actInd.startAnimating() 
    self.tableVIew.tableFooterView = footerView 
+0

आप वास्तव में यह सही रंग संपत्ति का उपयोग कर किया था। रंग जोड़ने से पहले सूचक शैली सेट करें। – Akaino

उत्तर

40

आप रंग सेट करने के लिए गतिविधि सूचक शैली सेट करने के बाद की जरूरत है। ऐसा लगता है कि activityIndicatorViewStyle की स्थापना activityIndicator

के लिए रंग को रीसेट करता है तो बस ऐसा करते हैं:

// .... 

actInd.activityIndicatorViewStyle = UIActivityIndicatorViewStyle.whiteLarge 
actInd.color = UIColor.black 
footerView.addSubview(actInd) 
actInd.startAnimating() 
self.tableVIew.tableFooterView = footerView 

यह ठीक काम करना चाहिए।

+0

धन्यवाद कैटलिना! आपने मेरा दिन बचाया;) –

+0

आपका स्वागत है :) हैप्पी मैं –

8

प्रलेखन राज्यों

आप एक गतिविधि सूचक के लिए एक रंग सेट करते हैं, यह ओवरराइड रंग activityIndicatorViewStyle संपत्ति द्वारा प्रदान की।

तो आपको पहले activityIndicatorViewStyle सेट करना होगा और फिर रंग सेट करना होगा।

सही:

actInd.activityIndicatorViewStyle = UIActivityIndicatorViewStyle.WhiteLarge 
actInd.color = UIColor.blackColor() 

गलत:

actInd.color = UIColor.blackColor() 
actInd.activityIndicatorViewStyle = UIActivityIndicatorViewStyle.WhiteLarge 
+0

धन्यवाद, मेरे लिए सही काम कर सकता है !!! –

+0

दस्तावेज उत्तर के लिए धन्यवाद – vmeyer

0

आप अपने रंग आप सूचक शैली सेट करने के बाद बदलना चाहिए। बाकी सब कुछ मेरे लिए ठीक दिखता है।

0

स्विफ्ट 3 संस्करण

मुख्य वर्ग ViewController में activityIndicator जोड़ें:

class ViewController: UIViewController, WKNavigationDelegate { 

let activityIndicator = UIActivityIndicatorView(activityIndicatorStyle: UIActivityIndicatorViewStyle.whiteLarge) 

फिर viewDidLoad() में:

activityIndicator.stopAnimating() 
:

override func viewDidLoad() { 
super.viewDidLoad() 

activityIndicator.color = UIColor.black 
activityIndicator.center = CGPoint(x: view.bounds.size.width/2, y: view.bounds.size.height/2) 
view.addSubview(activityIndicator) 
activityIndicator.startAnimating() 

activityIndicator निकालने के लिए

3

यहां स्विफ्ट 4 का विस्तार है जो संकेतक को रंगना आसान बनाता है।

import UIKit 

extension UIActivityIndicatorView { 
    func assignColor(_ color: UIColor) { 
     activityIndicatorViewStyle = .whiteLarge 
     self.color = color 
    } 
} 

आप इसे इस तरह कहते हैं:

activityIndicator.assignColor(.black) 

यहाँ कार्रवाई में इस कोड है, एक यादृच्छिक टाइमर के साथ रंग बदलने के: enter image description here

संबंधित मुद्दे