2014-02-21 104 views
0

我想使用漸變作爲我的UIView的背景。UIView突出顯示背景漸變

CAGradientLayer *gradientLayer = [[CAGradientLayer alloc] init]; 
    gradientLayer.frame = CGRectMake(0.f, 0.f, self.currencyView.frame.size.width, self.currencyView.frame.size.height); 
    [gradientLayer setLocations:@[@0.f, @1.f]]; 
    [gradientLayer setColors:@[(id)[UIColor whiteColor].CGColor,(id)[UIColor blackColor].CGColor]]; 
    [self.animalView.layer insertSublayer:gradientLayer atIndex:0]; 

我已經加入了UITapGestureRecognizer

UITapGestureRecognizer *singleFingerTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(showAnimalDetails)]; 
    [self.currencyView addGestureRecognizer:singleFingerTap]; 

我的問題是由這種觀點可點擊,我怎麼可以添加一個突出梯度(可能只是扭轉了梯度)當觸摸了檢測。

任何幫助將不勝感激。

+0

當您的視圖被點擊並設置爲alpha時,更改一秒的alpha值.. :)可能會對您的情況有所幫助。 :) – iPatel

回答

0

使該圖層成爲類變量而不是本地圖像,然後在showAnimalDetails函數內部根據需要更改漸變特性。然後致電setNeedsDisplay。儘管如此,你將不得不通過其他方式來處理取消選擇。

+0

似乎沒有工作:( – Neelesh

+0

@Neelesh而不是修改顏色,請嘗試從self.layers中刪除它,然後重新創建一個新的gradientLayer並將其添加到self.layers。 – Putz1103