1. 拖控件
2. 连线
4. 实例化pop, 作为成员
5. pop方法
1. 点击按钮时, 保存这个数字
2. 再次输入时,过滤,比如输入1就出来先前输入的内容. // 123 1123 12345
参考之前的笔记:
**************************************
判断是否是qq= 前缀: // hasPrefix,前缀
[str hasSuffix:@“fs”]; // 是的话,返回YES; 否则返回NO
**************************************
// 这里可以用谓词过滤:
其他谓词语句:
2个都可以:
用前面,会给你新的数组,原来的数据不变;
而下面的数据会直接覆盖先前的数字.
// so: 选第1个.
**************************************
扩展:
// 可用用于正则表达式
matches
// 过滤出username中的
// 过滤长度为3的
**************************************
还可以改进:
连续包含: 比如 12356
输入35 也能联想出来12356
3. 监听用户的输入. // 是系统的通知
4. 完善tableView
5. 泡泡没有数据的时候,隐藏泡泡
if(result.count>0)
6. 记得刷table
下一阶段:
// 需要达到的效果:
点击tableView中的数字, 显示到textField中.
思路:
用通知中心,同时dismiss泡泡
来个好玩的:
// 回去好好研究textkit / mark
attributedText
// 1. 还可以做到:
第一个字变大,后面的不变.
// 2. 还可以做到:
输入1,所有1变红,2所有2 变红.
// 效果:
// 回tableView 处理
带属性的字符串:
修改下面的函数:
// 把长度存起来,参数传进来.
// 修改相关的函数引用
在监听时调用:
// 实例化 tabViewCtl 调用它的方法,给tableView传值...一个是数据源,一个是长度.
[tabViewCtl refreshResult:resultArr length:self.myTF.text.length];
再回到NSMakeRange改变范围
效果图:
部分代码:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"cell"];
//cell.textLabel.text = dataArr[indexPath.row];
NSMutableAttributedString * str = [[NSMutableAttributedString alloc]initWithString:dataArr[indexPath.row]];
[str addAttribute:NSForegroundColorAttributeName value:[UIColor redColor] range:NSMakeRange(0, _length)];
cell.textLabel.attributedText = str;
//NSLog(@"text--------%@",cell.textLabel.text);
return cell;
}