javascript

java

python

c#

node.js

reactjs

android

php

c++

ruby-on-rails

html

jquery

git

css

ios

sql

.net

c

<img src="//i.stack.imgur.com/bk9VA.png" alt="" class="sponsor-tag-img" width="18" height="16"/>android

string

ios - 如何将UICollectionView单元水平居中?

我做了一些研究,但是我找不到任何关于如何在UICollectionView中水平居中单元格的代码示例。

而不是第一个单元格像这个X00,我希望它像这个0X0。 有没有办法实现这个目标?

编辑:

想象我想要的东西:

enter image description here

当CollectionView中只有一个元素时,我需要它看起来像版本B. 当我有多个元素时,它应该像版本A但有更多元素。

当我只有1个元素时,它看起来像版本A,我想知道我怎么能让它看起来像B.

谢谢您的帮助!

trans by 2019-08-18T20:33:47Z

ios - 检查视图控制器是以模态方式呈现还是在导航上推送

在我的视图控制器代码中,我如何区分:

  • 以模态呈现
  • 推送导航堆栈

在两种情况下,HtmlViewControllerUINavigationController都是YES,因此不是很有帮助。

令我感到困惑的是,我的父视图控制器有时是模态的,在其上推送要检查的视图控制器。

事实证明我的问题是我将HtmlViewController嵌入到UINavigationController中,然后呈现。 这就是为什么我自己的尝试和下面的好答案都无效的原因。

HtmlViewController*     termsViewController = [[HtmlViewController alloc] initWithDictionary:dictionary];
UINavigationController* modalViewController;

modalViewController = [[UINavigationController alloc] initWithRootViewController:termsViewController];
modalViewController.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
[self presentViewController:modalViewController
                   animated:YES
                 completion:nil];

我想我最好告诉我的视图控制器它的模态,而不是试图确定。

trans by 2019-08-18T18:26:13Z

ios - 具有透明背景的Swift模态视图控制器

这个问题在这里已有答案:

  • 模态呈现的viewcontroller的透明背景                                     3个答案

我知道这个主题很受欢迎,但我在编程语言中有一点点问题,事实是我仍然不明白我把代码放在哪里。 好吧,我将讲述整个案例:

enter image description here

我试图使模态Swift与正常情况略有不同:通过单击按钮,ViewController在屏幕上显示(按照模式类型),但具有透明背景。 仅显示带标签的蓝色视图。 当呈现此ViewController时,它具有透明背景,但是一旦完成转换,它将保持黑色背景。 已经停用了opaque选项,并测试了一些选项,但没有这个故障排除。

有人能帮帮我吗?

该视频是案例模拟器中的一项测试([https://www.youtube.com/watch?v=wT8Uwmq9yqY)。]

我从swift开始,我仍然对如何在Xcode中编程感到很遗憾,我读了一个问题的答案,该问题有以下代码来解决这个问题:

self.presentingViewController.providesPresentationContextTransitionStyle = YES;
self.presentingViewController.definesPresentationContext = YES;
modal.modalPresentationStyle = UIModalPresentationOverCurrentContext;

我在哪里放这个代码?

trans by 2019-08-18T14:08:38Z

ios - 将UILabel高度调整为tex

我有一些标签,我想调整它们的高度到文本,这是我现在为此写的代码

func heightForView(text:String, font:UIFont, width:CGFloat) -> CGFloat{
    let label:UILabel = UILabel(frame: CGRectMake(0, 0, width, CGFloat.max))
    label.numberOfLines = 0
    label.lineBreakMode = NSLineBreakMode.ByWordWrapping
    label.font = font
    label.text = text

    label.sizeToFit()
    return label.frame.height
}

编辑:

问题不在于这段代码,所以我的问题就在于问题本身。 它可能对其他人有用!

trans by 2019-08-14T18:38:07Z

带有Swi的多个自定义单元格的UITableview

我想使用具有不同自定义tableViewCells的UITableview。 我的3个细胞是这样的:

  • Cell1:应该有图像和标签。
  • Cell2:应该有两个标签。
  • Cell3:应该有dayPicker。

我不想为单元格编写代码。 我如何在Swift中管理它。 我是否必须为每个单元格编写自己的类? 我可以使用一个tableviewController吗? 如何在不同的单元格中填充数据?

我想生成一个tableView,就像iOS设备的联系人应用程序一样。

trans by 2019-08-14T15:38:42Z

如何在Swift中使用完成处理程序创建一个函数?

我只是好奇我将如何处理这个问题。 如果我有一个函数,并且我想在完全执行时发生某些事情,我该如何将它添加到函数中? 谢谢

trans by 2019-08-14T12:02:03Z

ios - “致命的错误:数组不能从Objective-C桥接” - 你为什么要尝试,Swift?

我已经声明了一个Swift协议:

protocol Option {
    var name: String { get }
}

我声明了这个协议的多个实现 - 一些类,一些枚举。

我有一个视图控制器,其属性声明如下:

var options: [Option] = []

当我尝试将此属性设置为在另一个VC的prepareForSegue中实现NSArray协议的对象数组时,出现运行时错误:

fatal error: array cannot be bridged from Objective-C

为什么这不起作用? 编译器拥有它需要的所有信息,而且我根本不了解Objective-C与它有什么关系 - 我的项目只包含Swift文件,这些数组不会进出任何文件。 框架方法需要将它们桥接到NSArray

trans by 2019-08-14T01:22:46Z

xcode - 带有确定和取消按钮的快捷警报视图(iOS8),点击该按钮

我在用Swift编写的Xcode中有一个警报视图,我想确定用户选择哪个按钮(它是一个确认对话框)什么都不做或者执行某些操作。目前我有:

@IBAction func pushedRefresh(sender: AnyObject) {
        var refreshAlert = UIAlertView()
        refreshAlert.title = "Refresh?"
        refreshAlert.message = "All data will be lost."
        refreshAlert.addButtonWithTitle("Cancel")
        refreshAlert.addButtonWithTitle("OK")
        refreshAlert.show()
    }

我可能使用错误的按钮,请更正我,因为这对我来说都是新的。

谢谢!

trans by 2019-08-13T23:50:09Z

swift - 导航栏rightbaritem图像按钮错误iOS 11

此代码在ios10中正常工作。 我得到我的标签和图像按钮,这是用户照片配置文件,圆形圆形..好的。 但是当运行xcode 9 ios11模拟器时,我会把它拉出来。 按钮框必须是32x32,当检查SIM并获取视图并告诉xcode描述视图时,我得到170x32或类似的输出。

继承我的代码。

let labelbutton = UIButton( type: .system)
    labelbutton.addTarget(self, action:#selector(self.toLogin(_:)), for: .touchUpInside)
    labelbutton.setTitleColor(UIColor.white, for: .normal)
    labelbutton.contentHorizontalAlignment = .right
    labelbutton.titleLabel?.font = UIFont.systemFont(ofSize: 18.00)



    let button = UIButton(type: .custom)
     button.addTarget(self, action:#selector(self.toLogin(_:)), for: .touchUpInside)
     button.frame = CGRect(x: 0, y: 0, width: 32, height: 32)
     button.setTitleColor(UIColor.white, for: .normal)
     button.setTitleColor(UIColor.white, for: .highlighted)


    var buttomItem : UIBarButtonItem = UIBarButtonItem()
    buttomItem.customView = button
    buttomItem.target = self
    buttomItem.action = "ToLogin"

    var labelItem : UIBarButtonItem = UIBarButtonItem()
    labelItem.customView = labelbutton
    labelItem.target = self
    labelItem.action = "ToLogin"


    if let user = PFUser.current() {
        print("LOGIN : checkiando si existe usuario ")
            labelbutton.setTitle(USERNAME, for: UIControlState.normal)
            labelbutton.sizeToFit()

        if(user["profile_photo_url"] != nil) {
            print(" ENCONTRO PROFILE PHOTO URL NOT NIL Y ES \(user["profile_photo_url"])")
            let photoURL = user["profile_photo_url"] as! String
            let a = LoginService.sharedInstance
            a.downloadImage(url: photoURL, complete: { (complete) in

                if (complete) {

                    button.setImage(LoginService.sharedInstance.profile_photo! , for: UIControlState.normal)

                    button.layer.cornerRadius = 0.5 * button.bounds.size.width
                   // button.imageView!.contentMode = .scaleAspectFit
                   // button.imageView!.frame = CGRect(x: 0, y: 0, width: 40, height: 40)
                    //button.imageView!.contentMode = .scaleAspectFit
                    //button.imageView!.clipsToBounds = true
                    //button.imageView!.layer.cornerRadius = 60
                    button.clipsToBounds = true
                    self.NavigationItem.rightBarButtonItems = [buttomItem,labelItem]
                }


            })
        } else {
                self.NavigationItem.rightBarButtonItem = labelItem

        }
            print(" EL FRAME DEL BUTTON ES \(button.frame)")

    } else {

        labelbutton.setTitle("Login", for: UIControlState.normal)
        labelbutton.sizeToFit()
        self.NavigationItem.rightBarButtonItem = labelItem

    }

enter image description here

trans by 2019-08-13T18:39:29Z

ios - 故事板中使用自定义字体的归因字符串无法正确加载

我们在项目中使用自定义字体。 它在Xcode 5中运行良好。在Xcode 6中,它以纯文本形式工作,在代码中归因于字符串。 但是,在故事板中设置的那些归因字符串在模拟器或设备上运行时都会恢复到Helvetica,尽管它们在故事板中看起来很好。

我不确定它是否是Xcode 6或iOS 8 SDK的错误,或者在Xcode 6 / iOS 8中改变了使用自定义字体的方式?

trans by 2019-08-13T15:49:43Z

Swift Alamofire:如何获取HTTP响应状态代码

我想检索请求失败的HTTP响应状态代码(例如400,401,403,503等)(理想情况下也是成功的)。 在此代码中,我正在使用HTTP Basic执行用户身份验证,并希望能够在用户输错密码时向用户发送身份验证失败的消息。

Alamofire.request(.GET, "https://host.com/a/path").authenticate(user: "user", password: "typo")
    .responseString { (req, res, data, error) in
        if error != nil {
            println("STRING Error:: error:\(error)")
            println("  req:\(req)")
            println("  res:\(res)")
            println("  data:\(data)")
            return
        }
        println("SUCCESS for String")
}
    .responseJSON { (req, res, data, error) in
        if error != nil {
            println("JSON Error:: error:\(error)")
            println("  req:\(req)")
            println("  res:\(res)")
            println("  data:\(data)")
            return
        }
        println("SUCCESS for JSON")
}

不幸的是,产生的错误似乎并不表示实际收到了HTTP状态代码409:

STRING Error:: error:Optional(Error Domain=NSURLErrorDomain Code=-999 "cancelled" UserInfo=0x7f9beb8efce0 {NSErrorFailingURLKey=https://host.com/a/path, NSLocalizedDescription=cancelled, NSErrorFailingURLStringKey=https://host.com/a/path})
  req:<NSMutableURLRequest: 0x7f9beb89d5e0> { URL: https://host.com/a/path }
  res:nil
  data:Optional("")
JSON Error:: error:Optional(Error Domain=NSURLErrorDomain Code=-999 "cancelled" UserInfo=0x7f9beb8efce0 {NSErrorFailingURLKey=https://host.com/a/path, NSLocalizedDescription=cancelled, NSErrorFailingURLStringKey=https://host.com/a/path})
  req:<NSMutableURLRequest: 0x7f9beb89d5e0> { URL: https://host.com/a/path }
  res:nil
  data:nil

另外,在发生错误时检索HTTP正文会很好,因为我的服务器端会在那里放置错误的文本描述。

问题
是否可以在非2xx响应时检索状态代码?
是否可以在2xx响应时检索特定的状态代码?
是否可以在非2xx响应时检索HTTP正文?

谢谢!

trans by 2019-08-13T02:18:19Z

xcode - 尚不支持的类变量

我使用拆分视图控制器作为初始视图控制器开始我的项目,并从故事板自动启动它。

通常,具有此UI的应用程序只有一个分割视图控制器作为root,因此我在子类中创建一个静态变量,并在初始化完成后设置它。

所以我想用swift试试这个行为。

我在iBook上阅读了关于Type属性(带有static和class关键字)的Swift编程语言指南,并尝试了一段代码:

import UIKit

class SplitViewController: UISplitViewController {

    class func sharedInstance() -> SplitViewController {
        return SplitViewController.instance
    }

    class let instance: SplitViewController = nil

    init(nibName nibNameOrNil: String?, bundle nibBundleOrNil: NSBundle?) {
        super.init(nibName: nibNameOrNil, bundle: nibBundleOrNil)
        self.initialization()
    }

    init(coder aDecoder: NSCoder!) {
        super.init(coder: aDecoder);
        self.initialization()
    }

    func initialization() {
        SplitViewController.instance = self;
    }
}

但是当Xcode说类型属性的class关键字还没有得到支持时,我想通了。

error detail in image

你有解决方案吗?

trans by 2019-08-13T01:48:43Z

语法 - Swift make方法参数是否可变?

如何在不创建其他变量的情况下处理此错误?

func reduceToZero(x:Int) -> Int {
    while (x != 0) {
        x = x-1            // ERROR: cannot assign to 'let' value 'x'
    }
    return x
}

我不想创建额外的变量来存储x的值。 甚至可以做我想做的事情吗?

trans by 2019-08-12T11:26:14Z

如何在swi中定义类中的静态常量

我在我的功能中有这些定义

class MyClass {
    func myFunc() {
        let testStr = "test"
        let testStrLen = countElements(testStr)
    }
}

但是,如果我移动&#39; testStr&#39; 和&#39; testStrLen&#39; 到了班级,它不会编译。 它说&#39; MyClass.Type没有名为&#39; testStr&#39;的成员。

class MyClass {
    let testStr = "test"
    let testStrLen = countElements(testStr)

    func myFunc() {

    }
}

我怎样才能解决这个问题? 我不想支付点数来计算一个常数&#39;测试&#39; 每次。

根据我对以下评论的理解,我需要这样做:

class MyClass {
    let testStr = "test"
    let testStrLen = countElements("test")

    func myFunc() {

    }
}

有没有办法我不需要输入/输入&#34; test&#34; 两次?谢谢。

trans by 2019-08-12T05:43:47Z

ios - 错误:模块文件的最小部署目标是ios8.3 v8.3

所有在Xcode游戏中导入动态框架的尝试都会产生以下错误:

error: module file's minimum deployment target is ios8.3 v8.3
trans by 2019-08-11T22:21:15Z

ios - 在swi中创建和播放声音

所以我想要做的是快速创建并播放声音,当我按下按钮时会播放,我知道如何在Objective-C中执行此操作,但有人知道如何在Swift中播放吗?

对于Objective-C,它会是这样的:

NSURL *soundURL = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"mysoundname" ofType:@"wav"]];
AudioServicesCreateSystemSoundID((__bridge CFURLRef)soundURL, &mySound);

然后玩它我会做:

AudioServicesPlaySystemSound(Explosion);

有谁知道我怎么做到这一点?

trans by 2019-08-11T22:11:52Z

如何在Swift中创建范围?

在Objective-c中,我们使用NSRange创建范围

NSRange range;

那么如何在Swift中创建范围呢?

trans by 2019-08-10T16:57:00Z

ios - 如何从Swift中的Dictionary中获取特定索引处的密钥?

我在Swift中有一个Dictionary,我想获得一个特定索引的密钥。

var myDict : Dictionary<String,MyClass> = Dictionary<String,MyClass>()

我知道我可以遍历密钥并记录它们

for key in myDict.keys{

    NSLog("key = \(key)")

}

然而,奇怪的是,这样的事情是不可能的

var key : String = myDict.keys[0]

为什么?

trans by 2019-08-10T09:43:51Z

objective c - Swift变量是原子的吗?

在Objective-C中,您可以区分原子和非原子属性:

@property (nonatomic, strong) NSObject *nonatomicObject;
@property (atomic, strong) NSObject *atomicObject;

根据我的理解,您可以安全地读取和写入从多个线程定义为原子的属性,而同时从多个线程编写和访问非原子属性或ivars可能导致未定义的行为,包括错误的访问错误。

所以如果你在Swift中有这样的变量:

var object: NSObject

我可以安全地并行读取和写入此变量吗? (不考虑这样做的实际意义)。

trans by 2019-08-10T07:56:36Z

objective c - Swift只读外部,readwrite内部属性

在Swift中,定义公共模式的常规方法是什么,其中属性是外部只读的,但是在拥有它的类(和子类)内部可以修改。

在Objective-C中,有以下选项:

  • 在接口中将该属性声明为readonly,并使用类扩展在内部访问该属性。 这是基于消息的访问,因此它可以很好地与KVO,原子性等一起使用。
  • 在接口中将属性声明为只读,但在内部访问支持ivar。 由于ivar的默认访问受到保护,因此在类层次结构中可以很好地工作,其中子类也可以修改该值,但该字段是readonly。

在Java中,惯例是:

  • 声明受保护的字段,并实现公共的只读getter(方法)。

Swift的成语是什么?

trans by 2019-08-10T03:09:25Z

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 下一页 共25页