小编Geo*_*nts的帖子

Swift 4.2 imagePickerController问题

试图将聊天客户端从swift 4传递到swift 4.2并且使用选择器我发现了麻烦.

UIImagePickerControllerEditedImage // 无法使用索引类型为"UIImagePickerController.InfoKey"的类型'[String:Any]'下标

func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {

    if let pickedImage = info[UIImagePickerControllerEditedImage] as? UIImage {
        self.userProfileImage.contentMode = .scaleAspectFit
        self.userProfileImage.image = pickedImage
    }

    picker.dismiss(animated: true, completion: nil)
}
Run Code Online (Sandbox Code Playgroud)

uiimagepickercontroller swift swift4.2

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

Swift 4 无法读取数据,因为它的格式不正确

我正在开发一个项目来学习如何解析 JSON。我正在尝试将JSON解析为struct。我正在尝试使用接下来的代码来执行此操作,但出现以下错误:

Err 无法读取数据,因为它的格式不正确。

我究竟做错了什么?我也尝试使用 Alamofire,但我没有找到将它解析为 struct 的方法。

func getData(){
    let gitUrl = URL(string: "http://95.46.99.250:9095/api/v1/institution-categories")
    URLSession.shared.dataTask(with: gitUrl!) { (data, response
        , error) in
        let data = data
        print(data)
        do {
            let decoder = JSONDecoder()
            let gitData = try decoder.decode([Root].self, from: data!)

        } catch let err {
            print("\nErr", err.localizedDescription)
        }
        }.resume()
}
Run Code Online (Sandbox Code Playgroud)

结构

struct Root: Codable {
    let  data: [InnerItem]
}
struct InnerItem:Codable {
    let  id: Int?
    let  image: String?
    let  name: String?

    private enum CodingKeys : …
Run Code Online (Sandbox Code Playgroud)

parsing json ios swift

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

SwiftUI 自定义列表样式

我想创建带有标题和一些单元格的自定义下拉部分。基本上,我希望单元格与我的标题具有相同样式(页脚中所有单元格的宽度/白色背景/阴影相同)。问题是:

  • 我不知道如何删除页眉和页脚项目之间的间距。
  • 页脚单元格之间应该没有空格。
  • 页脚项目的填充不起作用.padding([.leading, .trailing], 20)
  • 也无法删除全宽的白色背景。应该只有红色。在此处输入图片说明

内容视图

    var body: some View {
    ScrollView{
        VStack(alignment: .center, spacing: 0){
            VStack{
                Text("")
                    .foregroundColor(.white)
                    .fixedSize(horizontal: false, vertical: true)
                Image("")
                    .renderingMode(.template)
                    .resizable()
                    .aspectRatio(contentMode: .fit)
                    .foregroundColor(Color.white)
                    .frame(width: 40, height: 40, alignment: .center)
            }
            .frame(minWidth: 0, maxWidth: .infinity, minHeight: 330, maxHeight: 330)
            .background(Color.darkBlue)
            TestView() //HERE IS CELL VIEW
                .frame(minWidth: 0, maxWidth: .infinity, minHeight: UIScreen.main.bounds.height - 330, maxHeight: UIScreen.main.bounds.height - 330)

        }
            .padding(.horizontal, 0)
            .padding(.top, -20)
            .navigationBarTitle("")
            .navigationBarHidden(true)
    }
}
Run Code Online (Sandbox Code Playgroud)

测试视图

var …
Run Code Online (Sandbox Code Playgroud)

user-interface swift swiftui

8
推荐指数
1
解决办法
4719
查看次数

Swift 4 Firebase 在线状态更新

我构建聊天应用程序。我在每个用户表中都有一个字段,可以检查用户是否在线。我仅使用数据库引用来获取isOnline状态并在拉动刷新时更新它。我看到当用户打开或折叠应用程序时,应用程序会自动更新在线状态。我怎样才能做到这一点?我是否需要任何侦听器或任何框架可以帮助我升级我的代码))像 ReactiveCocoa/ReactiveSwift 这样的东西...

PS 抱歉字段isOnline上的西里尔文字)这意味着在线/离线 在此输入图像描述

firebase swift firebase-realtime-database

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

Swift 4 后退按钮没有出现

我有问题...我有两个 ViewControllers,我使用此代码从第一个 VC 传递到第二个

let storyBoard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
    let newViewController = storyBoard.instantiateViewController(withIdentifier: "EVSignInViewController") as! EVSignInViewController
    self.present(newViewController, animated: true, completion: nil)
Run Code Online (Sandbox Code Playgroud)

问题是..我想在第二个 VC 上显示后退按钮。我已经尝试在 1st VC 上使用 Editor->Embed in-> Navigation controller。我也用这个

navigationController?.setNavigationBarHidden(false, animated: true)
navigationItem.backBarButtonItem = UIBarButtonItem(title:"", style:.plain, target:nil, action:nil)
Run Code Online (Sandbox Code Playgroud)

navigation uinavigationbar uinavigationcontroller swift

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

Swift 4 从后退按钮中删除文本

伙计们,我想从后退按钮中删除文本。我使用此代码从VC1导航到VS2(登录表单)。我试图将此代码添加到 VC2 但什么也没有。

self.navigationController?.navigationBar.backItem?.title = ""
Run Code Online (Sandbox Code Playgroud)

代码:

@IBAction func didSelectSegment(_ sender: UISegmentedControl) {

    let vcName = vcNames[sender.selectedSegmentIndex]
    if vcName == "NQTPastRecordViewController" && loggined() == false {
        let alert = alertAskLogin({
            let signInVC = getController("EVSignInViewController")

            self.navigationController?.pushViewController(signInVC, animated: true)
        })
        self.present(alert, animated: true, completion: nil)
        segmentControll.selectedSegmentIndex = 0
        return
    }
    self.container.swipeToController(at: sender.selectedSegmentIndex)

}
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

navigation back-button title swift

0
推荐指数
1
解决办法
6189
查看次数