iOS工作笔记(十四)

1.scrollview的frame指的是其可视范围,contentSize指的是其滚动范围,分别是在水平方向和竖直方向上的

所以要让scrollview在水平方向不能滚动,那么需要如下设置

_scrollView = [[UIScrollView alloc]initWithFrame:CGRectMake(0, 0, kScreenWidth, kScreenHeight)];
_scrollView.contentSize = CGSizeMake(0, kScreenHeight*3);

若要使scrollview能够滚动,contentSize某一方向的属性要比frame的大,否则滚动区域小,内容能全部展示,就无需滚动了

2.设置uicollectionview与屏幕两侧左右间距,可以用

-(UIEdgeInsets)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout insetForSectionAtIndex:(NSInteger)section{
    return UIEdgeInsetsMake(0, 10, 0, 10);//分别为上、左、下、右
}

添加该方法前

添加该方法后

上述方法与

layout.minimumLineSpacing = 10;
layout.minimumInteritemSpacing = 0;

这两个属性来共同调节uicollectionview的cell的位置

3.修改键盘return为send,可以用

self.myTextView.returnKeyType = UIReturnKeySend;

但此时仍有问题,点击send时仍为换行,应该做处理

-(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text{
    if ([text isEqualToString:@"
"]) {
        return NO; //使得return键失效
    }
    return YES;
}

若要对send事件进行监听,也是在上述方法里边

-(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text{
    if ([text isEqualToString:@"
"]) {
        //send事件处理
        [self.myTextView resignFirstResponder];

        return NO; //使得return键失效
    }
    return YES;
}

4.在tableview中若想在进入时就默认选中某一行,可以用

[self.firstTabelView selectRowAtIndexPath:indexPath
                                         animated:NO
                                   scrollPosition:UITableViewScrollPositionNone];
原文地址:https://www.cnblogs.com/Apologize/p/5908486.html