0421 iPad 泡泡

1. 拖控件
2. 连线
3. 创建tableViewController
4. 实例化pop, 作为成员
5. pop方法
// 箭头朝上,内容就想下,如图:
// 下====上 以此类推
Any 会自己决定一个最合适的方向
// so: 一般用Any
 
 
 
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;
}
posted @ 2015-04-21 20:54  toxicanty  阅读(135)  评论(0编辑  收藏  举报