小编Lor*_*lor的帖子

使用矢量图像集时如何避免自定义UIButton中的扭曲和拉伸图像?

下面是我的故事板,我有很多限制使这四个按钮很好地适应屏幕.但是,在我将图像放入按钮并检查故事板预览后,所有图像都会失真.我尝试在属性检查器面板上调整(尝试了所有选项)视图模式,但似乎根本没有效果.

还有一件事,我使用PDF作为矢量类型的图像集,而不是常规.png文件我很想知道这是否重要?我应该以编程方式改变UIButton内部矢量图像的显示方式吗?

验证器图像大小为500px*500px.在@orkenstein的提醒后,我将图像调整为50px*50px,xcode可能无法很好地处理超大矢量图像.图像显示在按钮内部,因为它正好是50px*50px并且失去了缩放能力.另外,当他消化时,我应该在矢量图像里面UIImageView和我的测试后,它在一个完美的工作UIImageView.

在此输入图像描述

xcode ios

4
推荐指数
1
解决办法
3140
查看次数

如何使用 Discourse API 更新主题内容?

我尝试使用 PUT/t/:id更新主题内容,但没有效果。

https://github.com/discourse/discourse_api/blob/master/lib/discourse_api/api/topics.rb

似乎没有办法使用 API 更新内容。我错过了什么吗?

discourse

4
推荐指数
1
解决办法
1353
查看次数

找不到oh-my-zsh命令:^ M

我正在尝试在Ubuntu 15上安装oh-my-zsh。运行安装脚本后

sh -c "$(wget https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"
Run Code Online (Sandbox Code Playgroud)

我有以下从未发生过的错误

/home/li-xinyang/.zshrc:3: command not found: ^M
/home/li-xinyang/.zshrc:9: command not found: ^M
/home/li-xinyang/.zshrc:12: command not found: ^M
/home/li-xinyang/.zshrc:16: command not found: ^M
/home/li-xinyang/.zshrc:19: command not found: ^M
/home/li-xinyang/.zshrc:22: command not found: ^M
/home/li-xinyang/.zshrc:25: command not found: ^M
/home/li-xinyang/.zshrc:28: command not found: ^M
/home/li-xinyang/.zshrc:31: command not found: ^M
/home/li-xinyang/.zshrc:34: command not found: ^M
/home/li-xinyang/.zshrc:39: command not found: ^M
/home/li-xinyang/.zshrc:44: command not found: ^M
/home/li-xinyang/.zshrc:47: command not found: ^M
/home/li-xinyang/.zshrc:52: command not found: ^M
/home/li-xinyang/.zshrc:53: …
Run Code Online (Sandbox Code Playgroud)

zsh oh-my-zsh

4
推荐指数
2
解决办法
3600
查看次数

如何在仅限Rails 5 API的应用程序中设置JSON API的内容类型

遵循规范使用JSON api,内容类型必须设置为application/vnd.api+json; 但是,ContentType在控制器中设置每个动作都显得乏味(参见下面的代码).

  def foo
    response.headers['Content-Type'] = 'application/vnd.api+json'
    # ...
  end
Run Code Online (Sandbox Code Playgroud)

是否有更好的方法来获得相同的结果?由于这是一个仅API应用程序,这可以在应用程序级别设置内容类型吗?

ruby ruby-on-rails

4
推荐指数
1
解决办法
1866
查看次数

为什么视图中的所有图层最初都设置为 nil?

我正在NSButton通过在线遵循代码进行第一个回合的子类化。但是,在我的子类中,layer总是nil.

我发现其他组件也有类似的行为,例如NSView,要设置图层的属性,我需要将 的wantsLayer属性设置NSViewtrue

在线示例代码

@IBInspectable
var shadowOpacity: Float {
    get {
        return layer.shadowOpacity
    }
    set {
        layer.shadowOpacity = newValue
    }
}
Run Code Online (Sandbox Code Playgroud)

我的代码,

@IBInspectable
var shadowOpacity: Float {
    get {
        print(layer?)
        return layer.shadowOpacity
    }
    set {
        layer.shadowOpacity = newValue
    }
}
Run Code Online (Sandbox Code Playgroud)

我的代码打印nil在控制台中。

有没有办法设置wantsLayertrue默认?

cocoa swift

4
推荐指数
1
解决办法
139
查看次数

如何在 SwiftUI 中获取实际视图渲染的大小和位置?

问题是如何获取父视图中实际查看的渲染尺寸和位置?换句话说,如何Text("Foo")在下面的 SwiftUI 代码中获取实际大小?

GeometryReader 可用于获取父建议size和安全区域插入 via safeAreaInsets,这些信息在 内部定义GeometryProxy。从下面的截图中您可以看到,建议的尺寸为VStack宽度300300高度,实际尺寸VStack未知。

在此输入图像描述

struct FooView: View {
    var body: some View {
        GeometryReader { geometryProxy in
            VStack {
                Text("\(geometryProxy.size.height), \(geometryProxy.size.width)")
                Text("Foo")
            }
            .background(Color.green)
        }
        .frame(width: 300, height: 300)
        .background(Color.blue)
    }
}
Run Code Online (Sandbox Code Playgroud)

swift swiftui

4
推荐指数
1
解决办法
3116
查看次数

如何在 SwiftUI MVVM ViewModel 中传递/获取核心数据上下文?

语境

为了对 Core Data 对象进行性能操作,managedObjectContext需要托管对象上下文。在SceneDelegate选中“使用核心数据”选项的情况下生成项目时,上下文通过内部的环境变量传递到 View 中(见下文)。一个相关的问题是为什么必须通过环境变量传递核心数据上下文对象?

let contentView = MainView().environment(\.managedObjectContext, context)
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试将 传递context到视图模型时,它会抱怨以下内容

不能在属性初始值设定项中使用实例成员“上下文”;属性初始值设定项在 'self' 可用之前运行

struct MainView: View {
    @Environment(\.managedObjectContext) var context
    
    // Computed property cannot be used because of the property wrapper
    @ObservedObject var viewModel = ViewModel(context: context)
}

class ViewModel: ObservableObject {
    var context: NSManagedObjectContext
}
Run Code Online (Sandbox Code Playgroud)

添加一个init()来初始化视图内的视图模型会导致不同的错误,从而导致构建失败。

未能产生表达诊断;请提交错误报告

    init() {
        self.viewModel = ViewModel(context: context)
    }
Run Code Online (Sandbox Code Playgroud)

那么如何在视图模型中使用/获取/传递上下文呢?在视图模型中获取上下文的更好方法是什么?

core-data mvvm swift swiftui

4
推荐指数
1
解决办法
2023
查看次数

为什么 UIGraphicsGetCurrentContext 在 UIGraphicsBeginImageContext 之后返回 nil

我正在按照代码示例制作模糊的 UILabel,/sf/answers/4355743591/

我的要求是在标签初始化后使标签模糊,而不是blur在运行时调用该方法。但是,当我尝试blur在标签初始化后调用时,返回的值UIGraphicsGetCurrentContext因此nil出现“致命错误:在展开可选值时意外发现 nil”

UIGraphicsBeginImageContext(bounds.size)
print("DEBUG: bounds.size", bounds.size)
self.layer.render(in: UIGraphicsGetCurrentContext()!) // <- return nil
var image = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
print("DEBUG: image image", image)
Run Code Online (Sandbox Code Playgroud)

我尝试在以下所有位置单独添加代码,现在可以获取上下文,但它不会按预期生成模糊效果。

override func layoutSubviews() {
    super.layoutSubviews()
    self.blur()
}

// OR
    
override func draw(_ rect: CGRect) {
    super.draw(rect)
    self.blur()
}
Run Code Online (Sandbox Code Playgroud)

完整的代码片段,

class BlurredLabel: UILabel {

    func blur(_ blurRadius: Double = 2.5) {        
        let blurredImage = getBlurryImage(blurRadius)
        let blurredImageView = UIImageView(image: blurredImage)
        blurredImageView.translatesAutoresizingMaskIntoConstraints = false
        blurredImageView.tag = 100
        blurredImageView.contentMode …
Run Code Online (Sandbox Code Playgroud)

core-image uikit ios swift

4
推荐指数
1
解决办法
1365
查看次数

如何在 UIMenu 内的 UIAction 中更改图标颜色?

尝试在 UIAction 中更改图标颜色但更改色调似乎根本不起作用。任何的想法?

let imageView = UIImage(systemName: "eye")!
                    .withTintColor(.red, renderingMode: .alwaysTemplate)
Run Code Online (Sandbox Code Playgroud)

下面的源代码来自Apple “将菜单和快捷方式添加到菜单栏和用户界面”示例,只是imageView新元素。

    func contextMenuActions() -> [UIMenuElement] {
        let imageView = UIImage(systemName: "eye")?.withTintColor(.red, renderingMode: .alwaysTemplate)

        // Actions for the contextual menu, here you apply two actions.
        let copyAction = UIAction(title: NSLocalizedString("CopyTitle", comment: ""),
                                   image: imageView,
                                   identifier: UIAction.Identifier(rawValue: "com.example.apple-samplecode.menus.copy")) { action in
                                         // Perform the "Copy" action, by copying the detail label string.
                                         if let content = self.detailItem?.description {
                                             UIPasteboard.general.string = content
                                         }
        }
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

uikit ios swift

4
推荐指数
1
解决办法
680
查看次数

窗口标题栏出现透明问题(不是很透明)

我试图让我的应用程序有更"平"的感觉所以我认为隐藏标题栏是个好主意.

但是,实际上titlebarAppearsTransparent似乎只删除了标题栏阴影,但没有使标题栏真正透明.

在使用任何代码修改标题栏之前,

在此输入图像描述

添加以下代码后(开始有更好的感觉),

self.window?.titlebarAppearsTransparent = true
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

将背景颜色设置为白色,

    self.window?.backgroundColor = NSColor.whiteColor()
    self.window?.titlebarAppearsTransparent = true
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

这当然不是我想要的.我以为我只是将标题栏变为透明true.这里发生了什么?

任何提示或评论都表示赞赏,感谢您抽出时间查看此问题.

macos cocoa swift swift2

3
推荐指数
1
解决办法
1609
查看次数

标签 统计

swift ×6

ios ×3

cocoa ×2

swiftui ×2

uikit ×2

core-data ×1

core-image ×1

discourse ×1

macos ×1

mvvm ×1

oh-my-zsh ×1

ruby ×1

ruby-on-rails ×1

swift2 ×1

xcode ×1

zsh ×1