1.scrollview的frame指的是其可视范围,contentSize指的是其滚动范围,分别是在水平方向和竖直方向上的
所以要让scrollview在水平方向不能滚动,那么需要如下设置
_scrollView = [[UIScrollView alloc]initWithFrame:CGRectMake(, , kScreenWidth, kScreenHeight)];
_scrollView.contentSize = CGSizeMake(, kScreenHeight*);
若要使scrollview能够滚动,contentSize某一方向的属性要比frame的大,否则滚动区域小,内容能全部展示,就无需滚动了
2.设置uicollectionview与屏幕两侧左右间距,可以用
-(UIEdgeInsets)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout insetForSectionAtIndex:(NSInteger)section{
return UIEdgeInsetsMake(, , , );//分别为上、左、下、右
}
添加该方法前
添加该方法后
上述方法与
layout.minimumLineSpacing = ;
layout.minimumInteritemSpacing = ;
这两个属性来共同调节uicollectionview的cell的位置
3.修改键盘return为send,可以用
self.myTextView.returnKeyType = UIReturnKeySend;
但此时仍有问题,点击send时仍为换行,应该做处理
-(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text{
if ([text isEqualToString:@"\n"]) {
return NO; //使得return键失效
}
return YES;
}
若要对send事件进行监听,也是在上述方法里边
-(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text{
if ([text isEqualToString:@"\n"]) {
//send事件处理
[self.myTextView resignFirstResponder]; return NO; //使得return键失效
}
return YES;
}
4.在tableview中若想在进入时就默认选中某一行,可以用
[self.firstTabelView selectRowAtIndexPath:indexPath
animated:NO
scrollPosition:UITableViewScrollPositionNone];