小编Gen*_*use的帖子

Swift:如何在地图视图上启用和禁用注释?

我有一个代码在地图视图上显示一些注释.但是,我正在尝试使用某些功能,当用户点击UISwitch按钮时可以启用或禁用它.关于我如何实现这一目标的任何建议?提前致谢!

 let theHouse = MKPointAnnotation()
        theHouse.coordinate = CLLocationCoordinate2D(latitude: 38.8977, longitude: -77.0365)

    theHouse.title = "The House, DC"
        theHouse.subtitle = "New Jersey, DC"

    myMapView.addAnnotation(theHouse)
    myAnnotations.append(theHouse.title!)

    //Switch that toggles the annotation...
    @IBAction func turnOffAnnotations(_ sender: UISwitch) {
    //Code that enables and disables the annotation?

if toggle.isOn{
    let visible = myMapView.visibleMapRect
    let inRect = myMapView.annotations(in: visible)

    for annotation: MKAnnotation in myMapView.annotations{
        if (inRect.contains(anno as! AnyHashable)){
          myMapView.removeAnnotation(annotation)
        }
    }
    } else {
        let visible = myMapView.visibleMapRect
        let inRect = myMapView.annotations(in: visible)

        for annotation: MKAnnotation in …
Run Code Online (Sandbox Code Playgroud)

xcode ios swift xcode7

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

Swift 代码错误:String 类型的值没有成员 Int

我正在尝试在 Swift 中构建一个简单的计算器,但我无法弄清楚我如何或为什么会收到错误(“String 类型的值没有成员类型 Int”)或如何修复它。到目前为止,这是我的代码:

class ViewController: UIViewController {
    var isTypingNumber = false
    var firstNumber = Int!()
    var secondNumber = Int!()
    var operation = ""

@IBOutlet weak var calculatorDisplay: UILabel!


@IBAction func acButtonTapped(sender: AnyObject) {

}
@IBAction func number7Tapped(sender: AnyObject) {
    let number7 = sender.currentTitle
    if isTypingNumber{
        calculatorDisplay.text = calculatorDisplay.text! + number7!!
    }else{
        calculatorDisplay.text = number7
        isTypingNumber = true
    }
}
@IBAction func divideTapped(sender: AnyObject) {
    isTypingNumber = false

    firstNumber = calculatorDisplay.text?.Int()! **//Error: Value of type 'String' has no member …
Run Code Online (Sandbox Code Playgroud)

swift xcode7

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

Swift3:用户输入的Live UiLabel更新

我到处搜索,似乎无法找到实时更新标签的明确答案.

如何在UILabel不使用按钮的情况下更新(实时).例如,我有一个文本字段和一个UIlabel连接到view controller.

一旦用户开始输入,就会textfield在UI标签上实时显示相同的文本.结果,这消除了使用按钮来更新标签.我该怎么做呢?

xcode ios swift swift3 xcode8

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

如何生成仅显示一次的随机数?

我正在尝试在0-4之间生成最多5个数字,并且不会多次重复生成相同的数字。该程序将在尝试3次后停止,因此生成的随机数应为4,3,2,而不是4,3,4(例如)。

我创建了一个包含5个字符串元素的数组。单击按钮3次后,数组中的至少3个字符串将显示在标签上。单击按钮3次后,该应用程序将结束。但是,问题是每次单击按钮时,数组中的某些字符串都会不断重复自身。我发现了一种防止数字重复的方法,例如,代替(1,1,3)(1,3,1)。但就我而言,我不希望数字一旦生成就生成。例如。(1,3,4)而不是(1,3,1),其中重新生成(1)。

var fruits: [String] = ["Apple", "Mango", "Cherry", "Strawberry", "Blueberry", "Banana"] // fruits to be displayed in the label

func randomizeNum() -> UInt32 {
        var randomNumber = arc4random_uniform(UInt32(fruits.count))
        while previousNumber == randomNumber {
            randomNumber = arc4random_uniform(UInt32(fruits.count))
        }
        displayLbl.text = fruits[Int(randomNumber)]
        previousNumber = randomNumber

        print("the random num is \(randomNumber)") // This prints for example 5, 1, 5. Need it to print only numbers that's not yet displayed with 3 attempts.
        return randomNumber
    }
Run Code Online (Sandbox Code Playgroud)

我希望此函数的输出生成一个随机数,例如0,4,1,但它生成5,1,5或0,4,0,其中(0)将再次重新生成。

arrays random swift

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

标签 统计

swift ×4

ios ×2

xcode ×2

xcode7 ×2

arrays ×1

random ×1

swift3 ×1

xcode8 ×1