ちょっと、自分のアプリ内でお気に入りを処理する機能を作成しています。また、お気に入りのボタンの画像を変更しています。インスタンスに送信されたセレクタが認識されないUIButtonの背景を変更するとき
以下のコードが動作しますHOWEVER「0」というタグが付いた最初のボタンを好きにしたいときに、次のようなエラーが発生します。 (残りの仕事)。
は - [UIScrollViewのsetBackgroundImage:forState:]:認識されていないセレクタはイメージが、それが右にずれボタンのタイトルを押して変更しますと、私はフレームをリセットする必要があります。また、インスタンスに0x14e3b0
を送りました私は州の背景を変更するとき?あなたはそれにUIButton方法のいずれかを呼び出すことができます前に、UIButtonに送信者をキャストする必要があり
-(void)favButtons:(id)sender {
int i = [sender tag];
NSString *fav = [NSString stringWithFormat:@"%i", i];
if ([[Favinsults objectForKey:fav] isEqualToString:@"0"]){
[sender setImage:[UIImage imageNamed:@"favButton1.png"] forState:UIControlStateNormal];
UIButton* button = (UIButton *)[DoubleScrollLeft viewWithTag:i];
[button setBackgroundImage:[UIImage imageNamed:@"buttonD1.png"] forState:UIControlStateNormal];
} else {
[sender setImage:[UIImage imageNamed:@"favButton0.png"] forState:UIControlStateNormal];
UIButton* button = (UIButton *)[DoubleScrollLeft viewWithTag:i];
[button setBackgroundImage:[UIImage imageNamed:@"buttonD0.png"] forState:UIControlStateNormal];
}
}
なぜ、送信者タグが0の場合にのみ起こりますか? – Wez
デフォルトのタグ値は0です。送信者が期待どおりでない場合、それは別のクラスです。接続に問題があります。 – zaph
しかし、すべての送信者タグを1つオフセットすると、すべて正常に動作します。 – Wez