I have a ViewController in which the user selects a card (a custom UIButton) out of a UIScrollView. I have intercepted the touch event selecting the card and identified it,
If your point is to refresh "UIViewController", then:
[self viewDidLoad];
You can either let view controller observe your models or update your views manually.
I'm not very clear about your question, what is still remaining on your view?
For automatically update views when model changes, I suggest ReactiveCocoa.
you can do it in one of two places:
you need to call the function setNeedsDisplay
[yourViewOutletVariable/viewParameter setNeedsDisplay];
[self setNeedsDisplay];
hope this helps
Once you have a handle on your view:
UIView *v = ...;
[v removeFromSuperview];
You could also call the setNeedsDisplay method on your scroll view after calling removeFromSuperview.