반응형
UICollectionViewCell의 사각형을 얻는 방법은 무엇입니까?
UITableView
메서드 rectForRowAtIndexPath:
가 있지만 UICollectionView에 존재하지 않습니다. 셀의 경계 사각형을 잡는 깔끔한 방법을 찾고 있는데, 아마도 UICollectionView
.
이 작업을 수행하는 가장 좋은 방법은 다음과 같습니다.
목표 -C
UICollectionViewLayoutAttributes *attributes = [self.collectionView layoutAttributesForItemAtIndexPath:indexPath];
빠른
let attributes = collectionView.layoutAttributesForItem(at: indexPath)
그런 다음을 통해 해당 위치에 액세스 할 수 있습니다 attributes.frame
또는attributes.center
완벽한 프레임을 얻으려면 두 줄의 코드 만 필요합니다.
목표 -C
UICollectionViewLayoutAttributes * theAttributes = [collectionView layoutAttributesForItemAtIndexPath:indexPath];
CGRect cellFrameInSuperview = [collectionView convertRect:theAttributes.frame toView:[collectionView superview]];
스위프트 4.2
let theAttributes = collectionView.layoutAttributesForItem(at: indexPath)
let cellFrameInSuperview = collectionView.convert(theAttributes.frame, to: collectionView.superview)
신속한 3
let theAttributes:UICollectionViewLayoutAttributes! = collectionView.layoutAttributesForItem(at: indexPath)
let cellFrameInSuperview:CGRect! = collectionView.convert(theAttributes.frame, to: collectionView.superview)
신속하게 다음을 수행 할 수 있습니다.
//for any cell in collectionView
let rect = self.collectionViewLayout.layoutAttributesForItemAtIndexPath(clIndexPath).frame
//if you only need for visible cells
let rect = cellForItemAtIndexPath(indexPath)?.frame
어때
-(CGRect)rectForCellatIndexPath:(NSIndexPath *)indexPath {
UICollectionViewCell *cell = [self cellForItemAtIndexPath:indexPath];
if (!cell) {
return CGRectZero;
}
return cell.frame;
}
카테고리로 UICollectionView
?
#import <UIKit/UIKit.h>
@interface UICollectionView (CellFrame)
-(CGRect)rectForCellatIndexPath:(NSIndexPath *)indexPath;
@end
#import "UICollectionView+CellFrame.h"
@implementation UICollectionView (CellFrame)
-(CGRect)rectForCellatIndexPath:(NSIndexPath *)indexPath {
UICollectionViewCell *cell = [self cellForItemAtIndexPath:indexPath];
if (!cell) {
return CGRectZero;
}
return cell.frame;
}
@end
참고 URL : https://stackoverflow.com/questions/12504924/how-to-get-the-rect-of-a-uicollectionviewcell
반응형
'developer tip' 카테고리의 다른 글
Powershell에서 로그 파일 만들기 (0) | 2020.12.06 |
---|---|
Android : java.lang.ClassCastException : android.widget.imageView를 android.widget.textView로 캐스트 할 수 없습니다. (0) | 2020.12.06 |
문자열을 int64로 변환하는 Golang (0) | 2020.12.06 |
PHPStorm이 파일을 열 때 모든 메서드 / 기능을 축소하는 방법은 무엇입니까? (0) | 2020.12.06 |
jQuery autoComplete 클릭시 모두보기? (0) | 2020.12.06 |