ARAutocompleteTextView 0.1.0

ARAutocompleteTextView 0.1.0

测试测试
Lang语言 Obj-CObjective C
许可 MIT
Released最新版本2015年9月

alexruperez 维护。




Analytics

概述

ARAutocompleteTextView 是 UITextView 的子类,能够自动显示实时文本建议。这非常适合在用户边输入电子邮件地址、#标签或@处理程序时自动建议域名。

ARTextViewAutocompletion

用法

安装

将以下文件添加到您的项目

  • ARAutocompleteTextView.m
  • ARAutocompleteTextView.h
  • ARAutocompleteManager.m
  • ARAutocompleteManager.h

快速入门指南

创建一个 ARAutocompleteTextView 实例,就像创建 UITextView 一样。您可以通过编程方式或使用 Interface Builder 完成。以编程方式,代码如下所示

ARAutocompleteTextView* textField = [[ARAutocompleteTextView alloc] initWithFrame:CGRectMake(0,0,100,31)];

数据源是自动完成逻辑的大脑。如果您只想自动完成电子邮件地址、#标签或@处理程序,请使用示例项目中的 ARAutocompleteManager,如下所示

textField.autocompleteDataSource = [ARAutocompleteManager sharedManager];
textField.autocompleteType = ARAutocompleteTypeEmail;

自定义

自动完成数据源

ARAutocompleteManager(包含在示例项目中)提供了内置的电子邮件地址自动完成。它包含顶级电子邮件域名列表。您可能想根据自己的客户定制电子邮件域名列表,或者您可能需要编写适用于不同类型文本视图的自动完成逻辑(在演示中,自动完成颜色名称)。

您还可以创建自己的数据源类,并使用 autocompleteType 属性区分具有不同数据类型的文本视图。ARAutocompleteTextView 的数据源必须实现以下方法,作为 ARAutocompleteDataSource 协议的一部分。

- (NSString *)textField:(ARAutocompleteTextView*)textField completionForPrefix:(NSString *)prefix

您还可以为所有 ARAutocompleteTextView 实例设置一个默认的 dataSource。在示例项目中,我们使用一个 ARAutocompleteManager 单例

 [autocompleteTextOffset setDefaultAutocompleteDataSource:[ARAutocompleteManager sharedManager]];

定位和格式化

要通过固定金额调整自动完成标签的位置,设置 autocompleteTextOffset

textField.autocompleteTextOffset = CGPointMake(10.0, 10.0);

为了动态定位自动完成标签,可以将ARAutocompleteTextView进行子类化,并重写- (CGRect)autocompleteRectForBounds:(CGRect)bounds方法。

要调整自动完成标签的属性(例如fonttextColor),可以通过使用`[AutocompleteTextField autocompleteLabel]`属性来完成。

textField.autocompleteLabel.textColor = [UIColor grayColor];

事件监听

除了观察标准的UITextView通知(例如UITextViewTextDidChangeNotification及其相关通知)之外,您还可以使用[ARAutocompleteTextView autoCompleteTextFieldDelegate]来监听某些事件。如果您正在收集分析数据,这将特别有用。

等等。

  • 只要可能,就在您的应用程序中使用它,尤其是电子邮件地址——您的用户会感谢的!
  • 非常欢迎贡献。
  • 我们感谢归属感(让我们传播这个消息),但仍不是强制性的。

使用它?喜欢/讨厌它?

给作者@alexruperez发送推文,并查看alexruperez的博客:http://alexruperez.com

其他链接

code4app Review

Cocoa Controls