在iOS中,如何使用故事板将Label连接到View?

时间:2017-03-03 14:19:51

标签: swift xcode model-view-controller xcode-storyboard

我正在创建一个简单的iOS应用程序,我已经看到您可以通过按住控制按钮并从Label拖动到视图控制器,使用故事板将Label连接到视图控制器,从而创建一个IBOutlet中。我觉得这很方便。

我想知道如何将IBOutlet设置为视图,视图控制器。我已经制作了自定义视图并在其上添加了一些标签。我希望在视图类中引用这些标签,而不是视图控制器。但是,除非我拖到视图控制器,否则XCode似乎不允许我制作IBOutlet。有办法解决这个问题吗?

我能想到的唯一其他选择是以编程方式在视图上创建标签,但我宁愿不这样做。我试图将标签作为视图的一部分,我不认为视图控制器需要了解它们。

可能重复的上:我的问题是关于尝试使用故事板将Lable(或任何控件确实)连接到视图而不是视图控制器。链接的问题并不具体,似乎更像是一个使用xcode寻求帮助的新用户。接受的答案对我的问题没有帮助。

3 个答案:

答案 0 :(得分:1)

我觉得这是一种解决方法,但如果您首先将插座添加到自定义视图类,则可以通过从XCode中的Referencing Outlet拖回故事板中的视图来附加插座

class CustomView: UIView
{
    @IBOutlet weak var lblOne: UILabel!

    // do all the other stuff you need
}

enter image description here

答案 1 :(得分:0)

首先,您必须在storyboard中获取父视图(查看您在哪里添加标签并声明此视图是您在代码中查看的类)。假设,您将创建继承自UIView的类MyView,然后您将转到storyboard,在storyboard中单击该父视图,您的标签在哪里,在右侧部分选择类并在那里写下您之前创建的类的名称(MyView) - 自动完成应该管用。然后在一侧打开故事板,在右侧打开MyView类,您可以拖放与ViewController完全相同的引用

答案 2 :(得分:0)

您已经在ViewControler中创建了一些对象(UILabel,UIButton,UIImage ...)

enter image description here

1-您需要将故事板上的ViewControler链接到ViewController.swift,然后按照图片进行操作

enter image description here

2-在类字段中,输入ViewController类的名称。这样,您就可以将StoryBoard视图控制器链接到viewController.swift类

enter image description here

3-现在您需要创建要分配的变量(故事板中的UILabel,UIButton ...):在本示例中:

`class MovieDetailViewController: UIViewController, DetailView {

var presenter: MovieDetailPresenter!
var movie: Movie?

@IBOutlet weak var lblMovieYear: UILabel!
@IBOutlet weak var lblMovieTitle: UILabel!
@IBOutlet weak var movieImage: UIImageView!
@IBOutlet weak var lblMovieRating: UILabel!
@IBOutlet weak var lblMovieOverview: UILabel! 

}`

4-要将故事板上的UILabel链接到UILabel变量,或者将故事板上的UIButton链接到UIButton变量,请遵循下一张图片

首先在情节提要中选择视图控制器

enter image description here

第二次选择右上角的parragraf图标,然后单击“助手”,它将打开ViewControler.swift屏幕。

enter image description here enter image description here

现在yopu只需要将变量拖动到相应的对象即可。enter image description here

记住要记住所有变量,您将需要为故事板上的每个对象创建一个变量。