小编Amr*_*med的帖子

使用Swift中的multipart form-data iOS上传图片

我在使用multipart-form上传图片时遇到问题

这是我从这个答案中使用的代码

    var request = NSMutableURLRequest(URL: url!)
    request.HTTPMethod = "POST"

    var boundary = generateBoundaryString()
    request.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")

    var body = NSMutableData()

    if self.img.image != nil {
        var imageData = UIImagePNGRepresentation(self.img.image)

        if imageData != nil {
            body.appendString("--\(boundary)\r\n")
            body.appendString("Content-Disposition: form-data; name=\"image\"; filename=\"image.png\"\r\n")
            body.appendString("Content-Type: image/png\r\n\r\n")
            body.appendData(imageData!)
            body.appendString("\r\n")
        }

    }

    body.appendString("--\(boundary)--\r\n")
    request.setValue("\(body.length)", forHTTPHeaderField:"Content-Length")
    request.HTTPBody = body
Run Code Online (Sandbox Code Playgroud)

然后我使用NSURLSession来应用请求

服务器说我没有选择上传图片我只想暂时上传图片

我是否必须使用图像路径上传任何图像,或者它的数据是否足够?

我是否会错过任何事情,有什么帮助才能理解这一点?

file-upload image multipartform-data ios swift

26
推荐指数
4
解决办法
5万
查看次数

如何使用Swift访问tabBarController中的ObjectAtIndex?

我以前在obj-c中说过

[self.tabBarController.viewControllers objectAtIndex:1];
Run Code Online (Sandbox Code Playgroud)

但现在快速没有ObjectAtIndex了

self.tabBarController.viewControllers.ObjectAtIndex
Run Code Online (Sandbox Code Playgroud)

更新

好吧我会让它变得简单让我认为我有tabBarController它包含2个对象[FirstViewController,SecondViewController],我试图在这里的对象之间建立委托是设置委托的代码

var Svc:SecondViewController = self.tabBarController.viewControllers[1] as SecondViewController!
Svc.delegate = self
Run Code Online (Sandbox Code Playgroud)

当我运行时,我收到此错误0x1064de80d:movq%r14,%rax并且没有出现控制台错误

uitabbarcontroller viewcontroller ios swift

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

在单用户模式osx中从桌面删除文件

我的启动磁盘已满并且mac无法启动我想在单用户模式下从桌面删除文件

我试过这个

rm -rf /users/username/desktop/filename
Run Code Online (Sandbox Code Playgroud)

但不工作它说文件只读

macos bash file

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

iTunes Connect 只有“开始使用”屏幕

我的 iTunes Connect 只有“开始使用”屏幕,我看不到我的应用程序部分或任何正常的 iTunes 连接选项卡,此帐户是新帐户,尚无应用程序

在此处输入图片说明

这不是第一次使用 iTunes Connect 但不知何故我无法让这个帐户正常工作

有关如何通过此屏幕并开始使用 testflight 的任何帮助

iphone app-store ios testflight app-store-connect

10
推荐指数
2
解决办法
1885
查看次数

如何更改UISplitViewController iOS 8的状态栏(样式/颜色)

我正在尝试更改状态栏样式 UISplitViewController

我曾经这样做过 UINavigationBar

UINavigationBar.appearance().barStyle = UIBarStyle.Black

但是UISplitViewController没有appearance财产

无论如何改变那种风格?

uinavigationbar uisplitviewcontroller ios uistatusbar ios8

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

在Swift中使用NSURLSession下载文件

我在这里有两个问题,首先我不能用一个快速项目设置NSURLSessionDownloadDelegate,编译说

Type 'ViewController' does not conform to protocol 'NSURLSessionDownloadDelegate'
Run Code Online (Sandbox Code Playgroud)

第二个问题是我无法找到NSURLSession方法来下载一个简单的文件

这是我用来下载简单文件的方式

    var url:NSURL = NSURL.URLWithString(fileURL)
    var request:NSURLRequest = NSURLRequest(URL: url)
    var downloadTask:NSURLSessionDownloadTask = sessionManager.downloadTaskWithRequest(request)
    downloadTask.resume()
Run Code Online (Sandbox Code Playgroud)

这些是我想在swift中制作的方法

URLSession:(NSURLSession *)session downloadTask:(NSURLSessionDownloadTask *)downloadTask didWriteData:(int64_t)bytesWritten totalBytesWritten:(int64_t)totalBytesWritten totalBytesExpectedToWrite:(int64_t)totalBytesExpectedToWrite
Run Code Online (Sandbox Code Playgroud)

..

URLSession:(NSURLSession *)session downloadTask:(NSURLSessionDownloadTask *)downloadTask didFinishDownloadingToURL:(NSURL *)location
Run Code Online (Sandbox Code Playgroud)

..

URLSession:(NSURLSession *)session task:(NSURLSessionTask *)task didCompleteWithError:(NSError *)error
Run Code Online (Sandbox Code Playgroud)

..如果有一种新方法可以下载NSURLSession的文件我想知道,并且在NSURLSession中有什么新内容在swift中

ios nsurlsession nsurlsessiondownloadtask swift

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

如何在SplitViewController iOS 8的detailViewController上显示NavigationBar

我正在使用新的iOS 8 SplitViewController我只从storyboard设置一个detailViewController然后我showDetailViewController()用来显示一个新的viewController

self.splitViewController?.showDetailViewController(TableViewController(), sender: nil)
Run Code Online (Sandbox Code Playgroud)

但是NavigationBar总是被隐藏有一种方法可以将一个NavigationBar放在detailViewController上

是的顺便说一下,我试图取消隐藏导航栏但不工作

self.navigationController?.setNavigationBarHidden(false, animated: true)
Run Code Online (Sandbox Code Playgroud)

uinavigationbar uisplitviewcontroller ios swift ios8

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

ViewDidLoad中的UITextField的舍入角仅影响左角

我试图围绕两个UITextField的顶部和底部边框

结果在 ViewDidLoad()

ViewDidLoad结果

结果在 ViewDidAppear

ViewDidAppear结果

问题是ViewDidAppear在加载视图半秒后使边框发生变化,这对我的情况不利,

任何人都知道为什么它只是在ViewDidLoad方法的左角?

任何建议赞赏?

*更新*

viewDidLayoutSubviews 是相同的 ViewDidLoad

这是我用来绕角的代码

extension UITextField {
    func roundCorners(corners:UIRectCorner, radius: CGFloat) {
        let path = UIBezierPath(roundedRect: self.bounds, byRoundingCorners: corners, cornerRadii: CGSize(width: radius, height: radius))
        let mask = CAShapeLayer()
        mask.path = path.CGPath
        self.layer.masksToBounds = true
        self.layer.mask = mask
    }
}
Run Code Online (Sandbox Code Playgroud)

self.FirstTextField.roundCorners(UIRectCorner.TopRight | UIRectCorner.TopLeft, radius: 10.0)
self.SecondTextField.roundCorners(UIRectCorner.BottomLeft | UIRectCorner.BottomRight, radius: 10.0)
Run Code Online (Sandbox Code Playgroud)

uitextfield viewdidload ios autolayout swift

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

如何正确设置MPVolumeView的最大和最小图像

我试图设置MPVolumeView的最大和最小图像,但我无法让它工作

这是代码

VolumeView.setVolumeThumbImage(UIImage(named: "VolumeSlider"), forState: UIControlState.Normal)
VolumeView.setMinimumVolumeSliderImage(UIImage(named: "VolumeUp"), forState: UIControlState.Normal)
VolumeView.setMaximumVolumeSliderImage(UIImage(named: "VolumeDown"), forState: UIControlState.Normal)
Run Code Online (Sandbox Code Playgroud)

这是结果 以前有没有人遇到这个问题,任何帮助都会很棒吗?

uislider ios mpvolumeview swift ios8

3
推荐指数
2
解决办法
1937
查看次数