我扩展了UIView以添加addGradientWithColor()方法来获取渐变背景:
extension UIView {
func addGradientWithColor() {
let gradient = CAGradientLayer()
gradient.frame = self.bounds
gradient.colors = [gradientEndColor.CGColor, gradientStartColor.CGColor]
gradient.startPoint = CGPointMake(1,0)
gradient.endPoint = CGPointMake(0.2,1)
self.layer.insertSublayer(gradient, atIndex: 0)
} }
Run Code Online (Sandbox Code Playgroud)
我的问题是当我运行横向模式时,UIView没有被拉伸
override func viewDidLayoutSubviews() {
super.viewDidLayoutSubviews()
self.view.addGradientWithColor() }
Run Code Online (Sandbox Code Playgroud)
我试图调用viewDidLayoutSubviews()但它无法正常工作
我有一个UITableview,其中每个单元格都有一个按钮。我的问题是,如果我单击第一行中的按钮,则单元格的高度会增加,然后我在tableviewcell中单击已扩展的单元格高度的另一个按钮,将会降低选中的单元格的高度
尝试了此链接后,UITableView:如何在单击按钮时动态更改单元格高度?迅速
这是我的代码:
var indexOfExpendedCell:NSInteger = -1
var shouldCellBeExpanded:Bool = false
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
cell.optionButton?.addTarget(self, action: #selector(ViewController.optionAction), forControlEvents: UIControlEvents.TouchUpInside)
return cell
}
func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {
if shouldCellBeExpanded && indexPath.row == indexOfExpendedCell {
return 102
}
else { return 57 }
}
}
func optionAction(sender: UIButton){
if let button = sender as? UIButton {
shouldCellBeExpanded = !shouldCellBeExpanded
indexOfExpendedCell = sender.tag
if shouldCellBeExpanded {
self.tableView.beginUpdates()
self.tableView.endUpdates()
button.setImage(UIImage(named: "Reject Icon …Run Code Online (Sandbox Code Playgroud) 我已经创建了 5.2 版本的新 Rails 应用程序。Rails 5.2 引入了秘密的加密功能。
我已经在 devise.rb 文件中配置了密钥
config.secret_key = Rails.application.credentials[Rails.env.to_sym][:secret_key_base]
并为所有环境添加了 secret_key 的使用
EDITOR=vim rails 凭证:编辑
development:
secret_key_base: absdss
test:
secret_key_base: 123232
production:
secret_key_base: 123456
Run Code Online (Sandbox Code Playgroud)
保存凭据后,我可以在本地的 rails 控制台中获取 secret_key
rails 控制台中的输出:
Running via Spring preloader in process 44308
Loading development environment (Rails 5.2.0)
2.5.1 :001 > Rails.application.credentials.development[:secret_key_base]
=> "absdss"
Run Code Online (Sandbox Code Playgroud)
凭据在生产服务器上不起作用,我们在 gitlab 中使用 CI/CD 进行部署阶段,当我运行
rails 数据库:创建数据库:迁移
我收到以下错误
> rails db:create db:migrate
---> Running in 1563453ddf2a
rails aborted!
NoMethodError: undefined method `[]' for nil:NilClass
/usr/src/app/config/initializers/devise.rb:12:in `block in <main>' …Run Code Online (Sandbox Code Playgroud) ruby ruby-on-rails gitlab-ci ruby-on-rails-5.1 ruby-on-rails-5.2
ios ×3
gitlab-ci ×1
objective-c ×1
ruby ×1
swift ×1
swift3 ×1
uibutton ×1
uitableview ×1
uiview ×1
xcode ×1