平成30年3月28日(水曜日)
エトセトラ試行するも、現時点で、以下リンクがベストか。
UICollectionView with autosizing cell using autolayout in iOS 9 & 10
最初から、UICollectionViewControllerを使用すると、無限ループなどのerror発生。
ViewController上での、CollectionView使用が無難か。
平成30年3月28日(水曜日)
エトセトラ試行するも、現時点で、以下リンクがベストか。
UICollectionView with autosizing cell using autolayout in iOS 9 & 10
最初から、UICollectionViewControllerを使用すると、無限ループなどのerror発生。
ViewController上での、CollectionView使用が無難か。
平成30年3月27日(火曜日)
@IBOutlet weak var widthLayout: NSLayoutConstraint?
上の部分について、以下リンク
Storyboard上のconstraintはOutletでコードと結びつけることができる
平成30年3月26日(月曜日)
更に検索(Adjust the collection view to the screen size.)
検索結果に有用なリスト多し、swift4有り★★★
以下リンク下の方に、swift4版有り
How to resize the collection view cells according to device screen size?
autolayout関連
setCellWidth(UIScreen.main.bounds.width)にてセット、横・縦変わらず。。。
func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize {
平成30年3月25日(日曜日)
検索keyword
collectionview autolayout reload by orientation.isLandscape
autolayout
collectionViewLayout.invalidateLayout
forCellWithReuseIdentifier登録を忘れずに!!!
override func viewDidLoad() { super.viewDidLoad() (collectionView.collectionViewLayout as! UICollectionViewFlowLayout).estimatedItemSize = UICollectionViewFlowLayoutAutomaticSize collectionView.register(CollectionViewCell.nib(), forCellWithReuseIdentifier: "cell")
平成30年3月22日(木曜日)
以下二点により表示OK!!
collectioncontrollerを使用せずとしたので、パーツをドラッグし、構築。
この中での注意点は、overrideを外すこと、UICollectionReusableViewクラスを作成すること。label等のリンクをした上で、
以下を参考にして動作。
平成30年3月17日(土曜日)
2018/3/15 このままで動作、CollectionViewControllerを使用せず、且つTAGを使用。(簡便)
[iPhone] UICollectionView で マス目表示
project名(collectionview_trial)として保存、追加としてtagでなく、cellのfileを作成しての表示もOK!!
これまでのCollectionViewController版は、動作確認はxib版のみ、何故か上手く行かず。
縦横の不具合、これについてはautolayoutの解除エトセトラ面倒な事多し、xibとするか、↑の例で行くか考慮中。
xib版として、プロジェクト名(CollectionView_B_ SectionHeader)
要学習
CollectionViewの基礎
cell間隔など
検索結果
平成30年3月16日(金曜日)
iOS 10時代の Self-sizing UICollectionViewCell
↑見た目参考他
更に、ダウンロード、動作確認(但し、iphoneの縦、横に対しては対応不可、さてさて)
@IBOutlet weak var widthLayout: NSLayoutConstraint?
上の部分について、以下リンク
Storyboard上のconstraintはOutletでコードと結びつけることができる
// Do any additional setup after loading the view. // セクションヘッダを画面上部に固定 guard let fl = collectionView?.collectionViewLayout as? UICollectionViewFlowLayout else { return } fl.sectionHeadersPinToVisibleBounds = true // Self-sizing(上のリンクより動作可) fl.estimatedItemSize = UICollectionViewFlowLayoutAutomaticSize
更にSelf-sizingについて以下リンク
UICollectionView with autosizing cell using autolayout in iOS 9 & 10
更にセルのロングプレス時のアクションについて
objective-c版なので、注意!! 機能そのものは解りやすし。
UICollectionViewCellの編集メニューを表示する
swift版
//最後行について要調査!!→ UIPasteboard.general.string = cell.label.text
How to show MenuController of UICollectionViewCell?
【Swift4】タップでラベルのテキストをクリップボードへ【iOS】
【swift】UIMenuController(UITableView版)
【swift】UITableViewでUIMenuControllerをカスタマイズして使う方法
平成30年3月14日(水曜日)
Headerカスタマイズ
UICollectionViewのHeaderカスタマイズいろいろ
平成30年3月15日(木曜日)
①
部品リストからUICollectionViewcontrollerをドラッグすれば、OK!!だが、
別途UICollectionViewを単独にドラッグすると、iphone画面を横にした場合、
横に広がらない。取り敢えず先の方法ですすめる。
①の①
上については、AutoresizingとAuto Layoutの関係か、Auto Layoutを解除し、viewをドラッグすれば、OK!!となる。
但し、constrainが全て、なくなるので注意。
以下参考サイト
[iPhone] ストーリーボードを使った画像 UIImageView の設定
②
customcellにすると表示されない。
今回気付いたことは、どうやらviewDidLoad内に以下を記述する必要があるらしいこと。
xibかclassか
self.collectionView!.register(<#T##nib: UINib?##UINib?#>, forCellWithReuseIdentifier: <#T##String#>)
self.collectionView!.register(<#T##cellClass: AnyClass?##AnyClass?#>, forCellWithReuseIdentifier: <#T##String#>)
③取り敢えずxib使用が簡易か
複数のカスタムセルを用意したcollectionViewを表示する
このあたりについての、参考リンク(いろいろとあるも、確認できず、取り敢えず↑で表示可)
xib版とコード版の説明有り、2014年
How to load custom cell ( xib) in UICollectionView cell using swift
xib版
How to create custom cells for UICollectionView using Swift
objectt-c版
CollectionView 〜② カスタムセル 〜