首页 > 解决方案 > 材料设计的按钮表无法正确显示 - swift

问题描述

我试图将我的应用程序与material-components被调用bottomSheet的 . 当我实现该组件时,它正确地显示了我,但不像我预期的那样。

当它出现并且一直向上滚动时,bottomSheet 不会粘在视图底部

这里看起来像 在此处输入图像描述

如何解决这个特定问题?

这是代码

let viewController: UIViewController = UIViewController()

    viewController.view.backgroundColor = .red
    let bottomSheet: MDCBottomSheetController = MDCBottomSheetController(contentViewController: viewController)

    self.present(bottomSheet, animated: true, completion: nil)

标签: iosswiftuibuttonmaterial-components-ios

解决方案


为什么不添加该特定视图控制器的一些内容。

创造tableViewController

import Foundation
import UIKit

class TableViewContent: UITableViewController {

  let cellId = "CellId"
  override func viewDidLoad() {
    super.viewDidLoad()

    tableView.register(UITableViewCell.self, forCellReuseIdentifier: cellId)

  }

  override func numberOfSections(in tableView: UITableView) -> Int {
     return 1
  }
  override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
     return 10
  }
  override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCell(withIdentifier: cellId, for: indexPath)
    cell.textLabel?.text = "Hello World"
    return cell
  }

}

创建该控制器后,然后将其添加到您提供的代码中:

 //       let viewController: UIViewController = UIViewController()
//
//        viewController.view.backgroundColor = .red
//        let size = viewController.view.sizeThatFits(view.bounds.size)
//        let viewFrame = CGRect(x: 0, y: 0, width: size.width, height: size.height)
//        viewController.view.frame = viewFrame

    let viewController = TableViewContent()

    let bottomSheet: MDCBottomSheetController = MDCBottomSheetController(contentViewController: viewController)

    self.present(bottomSheet, animated: true, completion: nil)

希望这会有所帮助......因为控制器是空的,所以它没有坚持到底的原因,只是我的想法......


推荐阅读