小编Rai*_*bal的帖子

什么是@selector指令?为什么不简单地使用方法的名称?

我读了很多文章来理解为什么有必要使用它@selector()来引用一个方法,但我不认为我很满意.例如,当我们为按钮指定动作时,我们必须写:

[btn addTarget:self action:@selector(myMethod)];
Run Code Online (Sandbox Code Playgroud)

为什么不简单:

[btn addTarget:self action:myMethod];
Run Code Online (Sandbox Code Playgroud)

请解释需要和理由,没有它会发生什么.

objective-c selector

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

如何在任何其他视图下方放置任何视图,从视图中获取它的位置

我已创建了4个白色和黄色的子视图,您可以在下面分享的参考图像中看到.

在此输入图像描述

我已经以编程方式将Tabbar的位置从下到下改为导航栏,如下图所示(当它在模拟器中运行时).

在此输入图像描述

现在因为我对图像中的黄色视图有限制,如下所示

在此输入图像描述

它出现在导航栏的下方,但我希望它显示在Tabbar下方.

由于Tabbar以编程方式获得其位置,其他视图(包括黄色视图)正从故事板中获取其位置.故事板UIelements在来自该程序的任何其他UIelement之前得到解决,或者至少从程序上获得它们的位置.

什么是达到我想要的最佳方式.

请参考我的故事板以获得更多理解.(参见下图) 在此输入图像描述

我还想在tabbar和屏幕底部之间的空格中放置所有5个子视图.我想计算该空间的1/5并将此高度分配给每个子视图.我稍后会减少几个像素来分隔它们.

xcode ios swift swift2 swift3

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

如何隐藏栏按钮项目

我的屏幕流程如下

登录 - >注册 - > CarDetails

以上所有3个屏幕都在导航控制器中,但不允许用户从汽车详细信息返回到注册.实现它,我

override func viewWillAppear(animated: Bool)
    {
        self.navigationItem.setHidesBackButton(true, animated:true);
    } 
Run Code Online (Sandbox Code Playgroud)

在CarDetails视图控制器中.所以它隐藏了后退按钮,如果控制器在导航控制器中,它会自动生成.

到目前为止一切都很好.

在主屏幕上提供所有详细用户登陆后,我已滑出菜单.从菜单用户也可以转到CarDetail屏幕(更新).那个时候而不是backButton我需要滑出菜单按钮作为左栏按钮.所以我用故事板创建了它.

问题是它也会在注册视图后显示.我需要在Car-Details View中为它设置条件显示/隐藏功能.

我也跟它一样,如下所示

override func viewDidLoad()
{
    super.viewDidLoad()


    if menuButtonVisibility
    {

        if self.revealViewController() != nil
        {
            menuButton.target = self.revealViewController()
            menuButton.action = "revealToggle:"
            self.view.addGestureRecognizer(self.revealViewController().panGestureRecognizer())
        }
    }

    else
    {

    }

    menuButtonVisibility=true
}
Run Code Online (Sandbox Code Playgroud)

我只需要将行放入else块.

在此输入图像描述

objective-c ios swift

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

无法从处理程序访问类中存在的变量

import UIKit

class ViewController: UIViewController
{

    var icnNum : Int64 = 0

    let stopHandler =
        {
            (action:UIAlertAction!) -> Void in

            let num = icnNum
    }


    func showAlert( userStatus: String )
    {

        let alert = UIAlertController(title: "", message: "", preferredStyle: .alert)

        alert.title = "What you want to do?"

        alert.addAction(UIAlertAction(title: "Stop", style: .default, handler: stopHandler))

    }



}
Run Code Online (Sandbox Code Playgroud)

我不知道如何icnNum从处理程序访问它.我得到了以下错误.我知道我无法直接访问该变量但是方式是什么.

实例成员'icnNum'不能用于'ViewController'类型

iphone ios swift swift2 swift3

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

无法在领域中存储NSDate

我知道一个非常基本的问题,但确实很难做到。请帮我。

我有一个具有NSDate数据类型属性的领域对象。但是如何在该列中插入日期。

class Log : Object
{

    dynamic var id : Int = 0
    dynamic var icn : Int64 = 0
    dynamic var status : String = ""
    dynamic var date : String = ""
    dynamic var timeIn = NSData()
    dynamic var timeOut = NSDate()
    dynamic var pauseAt = NSDate()
    dynamic var breakTime : Int = 0
    dynamic var spentMinutes : Int = 0
    dynamic var lati : Double = 0.0
    dynamic var longi : Double = 0.0 …
Run Code Online (Sandbox Code Playgroud)

iphone realm ios swift

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

标签 统计

ios ×4

swift ×4

iphone ×2

objective-c ×2

swift2 ×2

swift3 ×2

realm ×1

selector ×1

xcode ×1