Swift UICollectionViewCell调整内容大小

加姆泽·卡利斯坎(Gamze Caliskan)

我的UICollectionViewCell有问题,对于像我这样的新手来说真的很难。我需要你的帮助。我正在写字典。我有一个搜索栏,一个集合视图,一些标签和一个文本视图。但是显示搜索结果时,既无法调整集合视图单元格的大小,也无法调整文本视图的大小。

视图控制器:

import UIKit

class sozlukController: UIViewController, UISearchBarDelegate, UICollectionViewDataSource, UICollectionViewDelegate{
    @IBOutlet var wordSearchBar: UISearchBar!
    @IBOutlet var collection: UICollectionView!
    var wordDataList = [String]()
    var meaningDataList = [String]()
    var dictionaryDataList = [String]()
    var yearDataList = [String]()

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }

    override func viewDidLoad() {
        super.viewDidLoad()
    }

    func searchBarSearchButtonClicked(searchBar: UISearchBar)  {
        wordDataList = []
        meaningDataList = []
        dictionaryDataList = []
        yearDataList = []
        var word = searchBar.text
        var parser:dictXMLParser = dictXMLParser()
        var searchResults:[dictXMLResponse]=parser.beginParsing(1, searchType: 1, searchWord: word)

        for result in searchResults {
            wordDataList.append(result.word)
            meaningDataList.append(result.meaning)
            dictionaryDataList.append(result.dictionary)
            yearDataList.append(result.year)
        }
        searchBar.resignFirstResponder()
        searchBar.text=""
         collection.reloadData()

    }



    func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
        return wordDataList.count
    }

    func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
        let cell:meaningCollectionViewCell = collectionView.dequeueReusableCellWithReuseIdentifier("Cell", forIndexPath: indexPath) as! meaningCollectionViewCell
        cell.wordLabel.text = wordDataList[indexPath.row]
        cell.meaningText.text = meaningDataList[indexPath.row]
        cell.dictionaryLabel.text = dictionaryDataList[indexPath.row]
        return cell
    }


}

UICollectionViewCell:

import UIKit

class meaningCollectionViewCell: UICollectionViewCell , UITextViewDelegate{
    @IBOutlet var wordLabel: UILabel!
    @IBOutlet var meaningText: UITextView!
    @IBOutlet var dictionaryLabel: UILabel!

    override func  layoutSubviews() {
        super.layoutSubviews()
        let fixedWidth = meaningText.frame.size.width
        let newSize = meaningText.sizeThatFits(CGSize(width: fixedWidth, height: CGFloat.max))
        meaningText.frame.size = CGSize(width: max(newSize.width, fixedWidth), height: newSize.height)

    }

}

当我第一次在搜索栏中写“ gamze”时,由于文本视图的高度,我没有看到全部含义。

首次搜索的屏幕截图

出乎意料的是,当我为第二次搜索写了同一单词时,文本视图的高度增加了,并且覆盖了以下标签。但是由于UICollectionViewCell的高度,我再次看不到全部含义。

第二次搜索的屏幕截图

我通过界面构建​​器设置了可滚动的“ false”和自动布局“ on”。您是否知道有一种方法可以在textview中显示其含义,而不会覆盖任何标签并根据其内容调整集合视图单元格的大小

我在查找有关swift的信息时遇到了麻烦。如果您能提供帮助,我将不胜感激。

加姆泽·卡利斯坎(Gamze Caliskan)

我在github上找到了一个很好的解决方案。诀窍是为单元格内容创建xib文件

https://github.com/honghaoz/Dynamic-Collection-View-Cell-With-Auto-Layout-Demo

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Swift中调整UICollectionViewCell大小时出错

来自分类Dev

Swift 3:以编程方式调整UICollectionViewCell的大小会导致单元格重叠

来自分类Dev

Swift 3:以编程方式调整UICollectionViewCell的大小会导致单元格重叠

来自分类Dev

Swift UICollectionViewLayout,内容大小

来自分类Dev

UIImageView调整大小/缩放-SWIFT

来自分类Dev

Swift 调整 uitablecell 图像的大小

来自分类Dev

自动设置 UICollectionViewCell 的宽度大小 - Swift

来自分类Dev

Swift 5 UICollectionViewCell如何更改其内容

来自分类Dev

调整 UICollectionViewCell 的大小以适合图像

来自分类Dev

在Swift中调整文本大小以适合标签

来自分类Dev

查找由UIStackView swift调整的视图的大小

来自分类Dev

Swift-调整图像iMessage应用的大小

来自分类Dev

如何在Swift中以编程方式更改UICollectionViewCell大小?

来自分类Dev

有没有一种方法可以根据SWIFT中的屏幕大小自动调整图像或任何内容的大小?

来自分类Dev

根据contenView的大小以编程方式调整scrollView的大小[Swift]

来自分类Dev

基于Swift中内容的动态UITextView大小

来自分类Dev

调整UICollectionView的大小后强制调整UICollectionViewCell的大小

来自分类Dev

在内容大小之前设置UICollectionViewCell大小

来自分类Dev

调整单个UICollectionViewCell的大小,可以吗?

来自分类Dev

UICollectionViewCell 中的文字大小未调整

来自分类Dev

iOS-Swift-App启动时屏幕调整大小

来自分类常见问题

如何在Swift中调整图片大小?

来自分类Dev

如何在Swift中使用视图调整子图层的大小?

来自分类Dev

如何在Swift中根据用户类型调整UITextField的大小

来自分类Dev

在Swift中调整字符串大小

来自分类Dev

在iOS Swift中动态调整UITableViewCell Heights的大小

来自分类Dev

在标签栏“更多”标签SWIFT中调整webView的大小

来自分类Dev

Swift:如何对CALayer进行子类化,使其自动调整大小?

来自分类Dev

如何在Swift中根据用户类型调整UITextField的大小

Related 相关文章

  1. 1

    在Swift中调整UICollectionViewCell大小时出错

  2. 2

    Swift 3:以编程方式调整UICollectionViewCell的大小会导致单元格重叠

  3. 3

    Swift 3:以编程方式调整UICollectionViewCell的大小会导致单元格重叠

  4. 4

    Swift UICollectionViewLayout,内容大小

  5. 5

    UIImageView调整大小/缩放-SWIFT

  6. 6

    Swift 调整 uitablecell 图像的大小

  7. 7

    自动设置 UICollectionViewCell 的宽度大小 - Swift

  8. 8

    Swift 5 UICollectionViewCell如何更改其内容

  9. 9

    调整 UICollectionViewCell 的大小以适合图像

  10. 10

    在Swift中调整文本大小以适合标签

  11. 11

    查找由UIStackView swift调整的视图的大小

  12. 12

    Swift-调整图像iMessage应用的大小

  13. 13

    如何在Swift中以编程方式更改UICollectionViewCell大小?

  14. 14

    有没有一种方法可以根据SWIFT中的屏幕大小自动调整图像或任何内容的大小?

  15. 15

    根据contenView的大小以编程方式调整scrollView的大小[Swift]

  16. 16

    基于Swift中内容的动态UITextView大小

  17. 17

    调整UICollectionView的大小后强制调整UICollectionViewCell的大小

  18. 18

    在内容大小之前设置UICollectionViewCell大小

  19. 19

    调整单个UICollectionViewCell的大小,可以吗?

  20. 20

    UICollectionViewCell 中的文字大小未调整

  21. 21

    iOS-Swift-App启动时屏幕调整大小

  22. 22

    如何在Swift中调整图片大小?

  23. 23

    如何在Swift中使用视图调整子图层的大小?

  24. 24

    如何在Swift中根据用户类型调整UITextField的大小

  25. 25

    在Swift中调整字符串大小

  26. 26

    在iOS Swift中动态调整UITableViewCell Heights的大小

  27. 27

    在标签栏“更多”标签SWIFT中调整webView的大小

  28. 28

    Swift:如何对CALayer进行子类化,使其自动调整大小?

  29. 29

    如何在Swift中根据用户类型调整UITextField的大小

热门标签

归档