UTableViewController にタッチ イベントを追加する必要があります。
各UICellに画像が表示されるように、ユーザーがセルにタッチすると、対応する画像がユーザーに表示され、画像はユーザー画面にのみ表示され、タッチイベントがあります。ユーザーが画面から指を離すと、画像は再び非表示になります。
これを達成するためのガイドをお願いします
UTableViewController にタッチ イベントを追加する必要があります。
各UICellに画像が表示されるように、ユーザーがセルにタッチすると、対応する画像がユーザーに表示され、画像はユーザー画面にのみ表示され、タッチイベントがあります。ユーザーが画面から指を離すと、画像は再び非表示になります。
これを達成するためのガイドをお願いします
UILongPressGestureRecognizer を使用して画像を変更できます。セルにジェスチャを追加し、hangleLongPress メソッドで画像を変更できます。
UILongPressGestureRecognizer *lpgr = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(handleLongPress:)];
lpgr.minimumPressDuration = 1.0; //user must hold for 1 second
[cell addGestureRecognizer:lpgr];
- (void)handleLongPress:(UIGestureRecognizer *)gestureRecognizer
{
if (gestureRecognizer.state == UIGestureRecognizerStateBegan)
{
// ----------------- Make here image visible ----------
}
if (gestureRecognizer.state == UIGestureRecognizerStateEnded)
{
// ------------ Make here image invisible ----------
}
}
画像を表示するには、セル内で UIButton を使用してください。実装が容易になります。次のように実装できます。
最初に、ボタンの背景色をクリア カラーに設定します。これにより、隠れたように見えます。
button.backgroundColor = [UIColor clearColor];
ボタンの画像を次のように設定します。
[button setImage: [UIImage imageNamed:@"Default.png"] forState:UIControlStateHighlighted];
これにより、ボタンが押されたときにのみ画像が表示され、タッチを離れると自動的に非表示になります。
それがうまくいくことを願っています。