Sie können einfach eine Überlagerung eines UIView (in schwarzer Farbe) oben hinzufügen.
(Wenn Sie keine benutzerabhängigen Steuerelemente in Ihrer Ansicht haben (wie Knöpfe, Stepper, usw.), dann ist das in Ordnung, Sie haben zB ein UITextView auf UIView, dann können Sie das schwarze UIView oben hinzufügen von UITextView)
(am oberen Rand) schwarz UIView -> UITextView -> UIView
anschließend können Sie die alpha-Komponente des schwarzen UIView steuern
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
NSArray *touchesArray = [touches allObjects];
for(int i=0; i<[touchesArray count]; i++) {
UITouch *touch = (UITouch *)[touchesArray objectAtIndex:i];
CGPoint point = [touch locationInView:nil];
//set the relationship between point and alpha. Maybe when x increases then alpha increases. You do the math.
}
}
Durch die Art und Weise unter Verwendung von Setze schwarze UIViews alpha von 0,0 bis 0,7 (denken Sie daran, die volle 1.0 Einstellung wird der Bildschirm auf volle Schwarz gesetzt.)
Einstellung alpha:
[UIView beginAnimations:nil context:NULL]; {
[UIView setAnimationDuration:duration];
[blackView setAlpha:alphaCounter];
} [UIView commitAnimations];