我有几个inputScreens
,其中用户按下一个按钮,该按钮当前在其上打开另一个pickerScreen with a picker and several buttons
。
我不想将pickerScreen
显示为完全覆盖inputScreens
的全新屏幕,而是希望pickerScreen
显示在inputScreen
的顶部,
例如较小的屏幕居中并变灰并使其无法访问
只要显示inputScreen
,基础pickerScreen
。
当前inputScreens
和pickerScreen
是使用UIViewController实现的。 ...而pickerScreen
完全取代了inputScreen
。
是否有一种简单的方法即可更改pickerScreen,使其显示在inputScreens的顶部?
非常感谢
最佳答案
制作一个UIView并在其上具有所需大小的选择器视图,然后将该视图隐藏在DidLoad视图中。当按下所需按钮时,取消隐藏该视图。然后在所有需要后将其隐藏。如此简单。否则进行调整Pickerview的大小根据需要。
UIView *whiteCoverView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 400)];
whiteCoverView.alpha = 0.9;
whiteCoverView.tag = 999;
whiteCoverView.backgroundColor = [UIColor grayColor];
[self.view addSubview:whiteCoverView];
UILabel *label2 = [[UILabel alloc] initWithFrame:CGRectMake(0, 25, 320, 40)];
label2.backgroundColor = [UIColor clearColor];
label2.numberOfLines = 0;
label2.font = [UIFont boldSystemFontOfSize:15.0];
label2.shadowColor = [UIColor colorWithWhite:0.0 alpha:0.5];
label2.textAlignment = UITextAlignmentCenter;
label2.textColor = [UIColor whiteColor];
label2.text = @"cfff";
[whiteCoverView addSubview:label2];
[label2 release];
int gap = 10;
UILabel *label3a = [[UILabel alloc] initWithFrame:CGRectMake(20, gap+50, 280, 15)];
label3a.backgroundColor = [UIColor clearColor];
label3a.numberOfLines = 0;
label3a.font = [UIFont boldSystemFontOfSize:13.0];
label3a.shadowColor = [UIColor colorWithWhite:0.0 alpha:0.5];
label3a.textAlignment = UITextAlignmentCenter;
label3a.textColor = [UIColor whiteColor];
label3a.text = @"cfccc ";
[whiteCoverView addSubview:label3a];
[label3a release];
像这样添加选择器。
`