2016-12-13 18 views
0

我目前正在嘗試選擇我在視圖控制器中的故事板中創建的UIImageView如何從View Controller中選擇故事板中的UIImage

在目標c中是否有與android的findViewbyId等價的方法?

+1

概念在iOS的不同。你想讓它成爲'IBOutlet'。去谷歌上查詢。爲了使其「可選擇」,請設置一個'TapgestureRecognizer。去谷歌上查詢。 – shallowThought

+0

@shallowThought謝謝你!我實際上正在製作動畫,但我以後肯定需要知道這一點。我在iOS工作中遇到的最大問題是,我不知道任何使我的答案難以搜索的條款。這就是爲什麼我通過SO問這樣一個簡單的問題。 – Airagale

+0

這個概念在iOS中是一樣的。你可以使用viewWithTag:20方法。 – GeneCode

回答

2

爲什麼不只是make an IBOutlet爲imageview?

然後,你可以通過一些剛剛接觸它像

self.imageView 

哪裏ImageView的是什麼,你叫你的出路。

+0

謝謝!我是來自android dev的iOS新手,這是最簡單的答案。這不像android的findViewById,但最終它的工作原理是一樣的。 我正在使用[self imageView];避免出現警告「未使用的屬性訪問結果 - 不應將獲取者用於副作用」 – Airagale

0

在您的UIImageView上放置一個UIButton

+0

您能否解釋一下這是如何讓我操縱視圖控制器中的UIImageView? – Airagale

+0

如果你想操縱它,你應該把它放出來,我以爲你想檢測觸摸。 –

+0

抱歉,我應該指定。看看淺思考對這個問題的評論 - 我可能會在覆蓋這樣一個區域中的按鈕之前先嚐試一下。 – Airagale

0

在Samantha建議您創建IBOutlet後,您需要爲您的UIImageView添加手勢識別器。

我建議在viewDidLoad中添加手勢識別:

-(void)viewDidLoad { 
    [super viewDidLoad]; 
    UITapGestureRecognizer *singlePress = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(imageViewPressed)]; 
    [singleTap setNumberOfTapsRequired:1]; 
    [_imageView addGestureRecognizer:singleTap]; 
} 

- (void)imageViewPressed { 
    //Perform imageView action here 
} 
0

使用viewWithTag

UIImageView *yourImage = (UIImageView*)[self.view viewWithTag:20]; 
相關問題