`

UIActionSheet添加UIPickerView.

 
阅读更多

 今天写了一个ActionSheet添加的UIPickerView的程序,搜索了很多的资料

- (void)configurePickersAndActionSheets {
    CGRect pickerFrame;

    if ((self.interfaceOrientation == UIInterfaceOrientationPortrait) ||
        (self.interfaceOrientation == UIInterfaceOrientationPortraitUpsideDown)) {
        pickerFrame = CGRectMake(0, 180, 0, 0);
    } else {
        pickerFrame = CGRectMake(0,180,480,200);
    }
    self.areaActionSheet = [[[UIActionSheet alloc] initWithTitle:@"Area" delegate:self cancelButtonTitle:@"Cancel" destructiveButtonTitle:nil otherButtonTitles:@"Use",NULL] autorelease];
    self.areaPicker = [[[UIPickerView alloc] initWithFrame:pickerFrame] autorelease];
    self.areaPicker.delegate = self;
    self.areaPicker.showsSelectionIndicator = YES;
    [self.areaActionSheet addSubview:areaPicker];
}
上面的代码就是横屏和纵屏的大小设置 
 if ((self.interfaceOrientation == UIInterfaceOrientationLandscapeLeft) ||
        (self.interfaceOrientation == UIInterfaceOrientationLandscapeRight)) {
        [actionSheet setBounds:CGRectMake(0, 0, 480, 480)];
    } else {
        [actionSheet setBounds:CGRectMake(0, 0, 320, 618)];
    }
此处用来设置actionsheet的大小  
具体的添加PickerView如下:
UIActionSheet *menu = [[UIActionSheet alloc] initWithTitle:[currentData objectAtIndex:0] 
delegate:self
cancelButtonTitle:@"Done"
destructiveButtonTitle:@"Cancel"
otherButtonTitles:nil];

 

UIPickerView *pickerView = [[UIPickerView   alloc]initWithFrame:CGRectMake(0,40,480,200)];

pickerView.delegate = self; pickerView.showsSelectionIndicator = YES;     

[menu addSubview:pickerView]; [menu showInView:self.view]; [menu setBounds:CGRectMake(0,0,480, 320)];

[pickerView release]; [menu release];

 

OK这个就完成了ActionSheet的操作,可能你还会有一个问题就是在UIPickerView如何设置显示下拉框的

字体大小,即改变显示数组中的字体大小: 

需要重写实现如下方法 

- (UIView *)pickerView:(UIPickerView *)pickerView 

viewForRow:(NSInteger)row 

  forComponent:(NSInteger)component 

  reusingView:(UIView *)view

        UILabel *pickerLabel = (UILabel *)view;

       if ((pickerLabel == nil) || ([pickerView class] != [UILabel class])) {

CGRect frame = CGRectMake(0027032);

pickerLabel = [[UILabel allocinitWithFrame:frame];

pickerLabel.textAlignment =UITextAlignmentLeft;

pickerLabel.backgroundColor = [UIColor clearColor];

pickerLabel.font = [UIFont boldSystemFontOfSize:18];

 

     if (component == kStateComponent) {

pickerLabel.textAlignment = UITextAlignmentCenter;

pickerLabel.text = [self.states objectAtIndex:row];

    }

   else if(component == kZipComponent){

       pickerLabel.textAlignment =UITextAlignmentLeft;

       pickerLabel.text = [self.zips objectAtIndex:row];

   }

   pickerLabel.textColor = [UIColor blackColor];

   return pickerLabel; 

}

return 0;

}

 

 

这样就解决字体大小的问题了. 

分享到:
评论

相关推荐

    UIPickerView+UIActionSheet

    3. 将 UIPickerView 添加到 UIActionSheet 中。 4. 在 delegate 方法中处理用户的选择,并关闭 ActionSheetPicker。 使用 ActionSheetPicker 的优点在于,它可以节省屏幕空间,避免用户在多个视图之间切换,同时...

    IOS时间选择器UIPickerView,ios8中UIView替代UIActionSheet

    将封装的UIActionSheet改为UIView,为了多态初始化时添加了枚举(几个时间选择器样式)。 UIActionSheet改为UIView核心代码为以下几个方法: - (void)showInView:(UIView *)view; // UIPicker显示 -(void)...

    iOS 控件基础- UIPickerView

    - 它可以与`UIActionSheet`或`UIAlertController`结合使用,创建弹出式选择器。 - 支持动态加载数据,即在需要时才加载,有利于提高性能。 - 可以通过`UIPickerViewStyle`设置样式,如默认样式和简明样式。 在实际...

    IOS下自定义下拉菜单的实现

    接着,通过实现UIPickerView的代理方法和数据源方法,我们可以在pickerView中添加滚动和选择数据的功能。当用户在pickerView中完成数据选择后,通过UIToolBar中的取消和确定按钮来关闭pickerView,并将选中的数据...

    swift-WYPickerViews几种常用的iOS选择器

    它结合了UIActionSheet和UIPickerView的特点,既节省空间又保持了交互性。 在使用`WYPickerViews`时,需要注意以下几点: - 首先,确保正确导入库并添加到项目中。 - 其次,根据选择器类型,初始化对应的实例,并...

    IOS应用源码之AlertPicker2.zip

    2. **在UIAlertController中添加UIPickerView**:使用UIAlertController的addTextFieldWithConfigurationHandler方法,创建一个空的文本字段,然后将UIPickerView作为输入视图附加到该文本字段上。这样,当警告视图...

    自定义的ActionSheet

    开发者可以通过查看和运行这个项目,学习如何创建类似的自定义ActionSheet,包括如何添加UIPickerView,如何处理按钮事件,以及如何实现自定义的显示和消失动画。 在实际的开发过程中,自定义ActionSheet可能会涉及...

    下拉菜单IOS

    - 添加Picker View:通过嵌入UIPickerView到UIAlertController的view中,或者使用UIPickerView作为actions的定制视图。 - 定义动作:使用UIAlertAction创建取消或选择的按钮,设置响应者处理用户点击事件。 - ...

    ios-PickerView.zip

    - 使用`UIActionSheet`或`UIAlertController`弹出Picker View,增加交互性。 4. 自动布局与尺寸调整: - 在Auto Layout环境下,需要正确设置Picker View的约束,确保它在不同屏幕尺寸下都能正确显示。 - `...

    更为简单详细的单选多选

    4. `UIPickerView`与`UIActionSheet` `UIPickerView`常用于下拉选择,它可以用于单选,但不直接支持多选。`UIActionSheet`在早期版本的iOS中常用于呈现多选对话框,但现在已被`UIAlertController`替代,因为后者提供...

    ActionSheetPicker-3.0:在iOS上快速重现下拉的UIPickerView ActionSheet功能

    ActionSheetPicker = UIPickerView + UIActionSheet 好吧,这就是它的开始。 现在,以下内容更为准确: iPhone / iPod的ActionSheetPicker = ActionSheetPicker =选取器+ UIActionSheet iPad ActionSheetPicker =...

    弹出框显示的Picker control_IOS应用源码.rar

    - UIPickerView是iOS SDK中的一个类,用于展示一系列可滚动的行,每行代表一个选项。Picker View通常用于日期选择器、下拉列表等场景。 - Picker View有两种主要的显示方式:一种是作为表视图(UITableView)的一...

    IOS应用源码Demo-超炫的弹出框选择列表效果-毕设学习.zip

    3. **动画效果**:通过源码学习如何添加过渡动画,使弹出框的出现和消失更加自然流畅,提升用户体验。 4. **数据绑定**:理解如何将数据模型与界面元素绑定,确保用户选择的反馈能够正确更新到应用的数据层。 5. *...

    ios下拉列表

    2. 使用UIPickerView:创建Picker View需要实例化UIPickerView对象,并将其添加到视图层级。你可以通过设置`dataSource`和`delegate`属性来指定Picker View的数据源和代理,这两个协议分别定义了Picker View的行数和...

    ios中的下拉框实现方法

    另一种实现下拉框效果的方式是使用UIActionSheet,但iOS 8之后,苹果推荐使用UIAlertController来代替。UIAlertController可以通过添加Picker View作为其输入视图,模拟下拉框的效果。 1. **UIAlertController介绍*...

    IOS Actionsheet使用频率很高的控件

    `UIAlertController`是一个更加通用的弹窗控件,可以替代旧版的`UIAlertView`和`UIActionSheet`。创建`ActionSheet`的基本步骤如下: 1. 首先,导入`UIKit`框架: ```swift import UIKit ``` 2. 创建`...

    IPhone控件项目UICatalog

    此外,UICatalog还涵盖了诸如导航栏(UINavigationController)、工具栏(UIToolbar)、标签页控制器(UITabBarController)等容器控件,以及弹出视图(UIActionSheet)、警告视图(UIAlertController)等交互元素的...

    ios开发知识点

    - **extension**: 在Swift中使用,用于扩展现有类型的接口,可以添加新的函数、变量或计算属性。 - **protocol**: 定义了一个类、结构体或联合必须实现的一组方法或属性,类似于Java中的接口。 #### 四、代理模式与...

    IOS应用源码——弹出框显示的Picker control.zip

    首先,Picker View(UIPickerView)是iOS SDK中的一个组件,它通常用于让用户在多个选项中进行选择。Picker View有两种主要的使用场景:一种是作为TableView的一行显示,另一种是作为键盘上的工具栏(InputView)...

    UIKit类簇剖析

    2. 控件类:这些类包括UIButton、UISwitch、UISlider、UIPickerView等,它们为用户提供交互式界面元素。例如,UIButton可以响应用户的点击,执行相应的操作;UISwitch用于开关状态的选择;UISlider则允许用户在一定...

Global site tag (gtag.js) - Google Analytics