void CAActivityIndicatorView::setStyle(CAActivityIndicatorViewStyle style)
{
    m_style = style;
    
    if (m_style != CAActivityIndicatorViewStyleImage)
    {
        this->removeSubview(m_pImageView);
        CC_SAFE_RELEASE(m_pImageView);
        
        this->removeSubview(m_pBackView);
        CC_SAFE_RELEASE(m_pBackView);
        
        DRect center = getBounds();
        center.origin = center.size/2;
        CAImage* image = NULL;
        
        switch (m_style)
        {
            case CAActivityIndicatorViewStyleGray:
            {
                image = CAImage::create("source_material/loading_black.png");
                center.size = DSize(40, 40);
            }
                break;
            case CAActivityIndicatorViewStyleWhite:
            {
                image = CAImage::create("source_material/loading_write.png");
                center.size = DSize(40, 40);
            }                break;
            case CAActivityIndicatorViewStyleGrayLarge:
            {
                image = CAImage::create("source_material/loading_black.png");
                center.size = DSize(68, 68);
            }
                break;
            case CAActivityIndicatorViewStyleWhiteLarge:
            {
                image = CAImage::create("source_material/loading_write.png");
                center.size = DSize(68, 68);
            }
                break;
            
            default:
                break;
        }
        setTimesOneCycle(m_nTimesOneCycle);
        
        
        CAImageView* imageView = CAImageView::createWithCenter(center);
        imageView->retain();
        imageView->setImage(image);
        this->insertSubview(imageView, 1);
        m_pImageView = imageView;
    }
}