IMOAutocompletionViewController 1.0.2

IMOAutocompletionViewController 1.0.2

测试已测试
Lang语言 Obj-CObjective C
许可 MIT
发布最后发布2014年12月

由Frederic Cormier维护。Frederic Cormier.



  • Frederic Cormier

建议在UITextField下方表格视图(UITableView)中显示

screenshot

如何使用

您的调用控制器应实现这两个协议

    @interface MyCallingController : UIViewController <IMOAutocompletionViewDataSouce, IMOAutocompletionViewDelegate>

    //Whatever...   

    @end

然后像这样调用IMOAutocompletionViewController

    IMOAutocompletionViewController *acvc = [[IMOAutocompletionViewController alloc]
                                             initWithLabelString:@"Label:" 
                                             textFieldString:[self theItem] 
                                             backgroundImageName:@"sandpaperthin.png"
                                             cellColors:nil];

    [acvc setDataSource:(id<IMOAutocompletionViewDataSouce>)self];
    [acvc setDelegate:(id<IMOAutocompletionViewDelegate>)self];


    UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:acvc];
    [[self navigationController] presentModalViewController:navController animated:YES];
    [acvc release];
    [navController release];

初始化器参数

  • labelString是文本框的标题标签
  • textFieldString用于填充UITextfield
  • 传递一个背景图片(传递nil以使用默认背景)
  • 单元格颜色字典(传递nil以使用默认颜色)

其他初始化器将覆盖并使用默认参数调用指定的初始化器(nil)。
旧版本的指定初始化器会调用新版本的指定初始化器。

  • 将自己设置为控制器的数据源和代理

cancelButton是navigationItem的rightBarButtonItem,因此需要一个导航控制器。

接下来,您需要实现这两个方法

1 - 提供可能完成列表

    - (NSArray *)sourceForAutoCompletionTextField:(IMOAutocompletionViewController *)asViewController 
    {
        return myListOfPossibleCompletionWords;
    }

2 - 捕截控制器完成单词

    - (void)IMOAutocompletionViewControllerReturnedCompletion:(NSString *)completion 
    {
        [self setTheThingThatNeedsCompletion:completion];
    }

如果您想提供自己的单元格颜色,只需将此字典传递给cellColors参数

     NSDictionary *cellColors = @{
                IMOCompletionCellTopSeparatorColor: [UIColor whiteColor],
             IMOCompletionCellBottomSeparatorColor: [UIColor colorWithRed:0.885 green:0.788 blue:0.767 alpha:1.000],
                  IMOCompletionCellBackgroundColor: [UIColor colorWithRed:0.961 green:0.914 blue:0.864 alpha:1.000]};

LICENSE


版权(C)2013 Frederic Cormier

特此授权,任何获得此软件及其相关文档文件(“软件”)副本的人员均可免费使用该软件,不受限制地使用该软件,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本,并允许向软件提供方提供软件的任何人这样做,前提是以下条件

上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。

本软件按照“现状”提供,不提供任何形式的保证,无论是明示的还是默示的,包括但不限于适销性、特定用途适用性和非侵权性保证。在任何情况下,作者或版权所有者均不对任何索赔、损害或其它责任负责,无论是在合同法、侵权法或其他法律下产生的,以及与该软件、该软件的使用或其他相关事宜有关的。