Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在iOS中向屏幕动态添加一组控件_Ios_Dynamic_Controls_Runtime_Add - Fatal编程技术网

在iOS中向屏幕动态添加一组控件

在iOS中向屏幕动态添加一组控件,ios,dynamic,controls,runtime,add,Ios,Dynamic,Controls,Runtime,Add,我在一个屏幕上工作,用户从下拉列表中选择一个选项。基于这个选择,他在屏幕上添加了一系列控件。我的下拉列表在屏幕的右下角。它占据了底部屏幕空间的20-25%。在底部剩余的75%屏幕中,我需要添加9个标签、6个UItext字段、2个下拉列表和2个按钮。我在这里附上一个标记 我的问题是:在ASP.NET中,我有一个具有上述所有控件的转发器。在其中一个名为“添加更多”的按钮中。如果单击该按钮,它会在当前中继器的底部添加相同的中继器。在iOS中有类似的东西吗?就像一个中继器,它有一堆控件,点击add,在底

我在一个屏幕上工作,用户从下拉列表中选择一个选项。基于这个选择,他在屏幕上添加了一系列控件。我的下拉列表在屏幕的右下角。它占据了底部屏幕空间的20-25%。在底部剩余的75%屏幕中,我需要添加9个标签、6个UItext字段、2个下拉列表和2个按钮。我在这里附上一个标记

我的问题是:在ASP.NET中,我有一个具有上述所有控件的转发器。在其中一个名为“添加更多”的按钮中。如果单击该按钮,它会在当前中继器的底部添加相同的中继器。在iOS中有类似的东西吗?就像一个中继器,它有一堆控件,点击add,在底部添加一个精确的中继器,依此类推。如果根据我的解释弹出任何想法/新想法,请让我知道。谢谢

链接

因此,当用户单击AddMore时,应该再次添加右侧包含8个标签、文本框、下拉列表和下面的2个按钮(其中一个称为“AddMore”)的大矩形。如果你需要更多的信息,请问我

ITMCustomView *cView = [[ITMCustomView alloc] initWithFrame:frame];
cView.delegate =self;
CGPoint scrollPoint = CGPointMake(0.0, (frame.origin.y/400)*400);
[self.scrollView setContentOffset:scrollPoint animated:YES];
[self.scrollView addSubview:cView];
最初是我添加的第一个自定义视图,我添加了这个框架大小(187585350,21)。下一步,每当我点击“添加更多”时,我就叫这个代表

[self.delegate addNewSize:CGRectMake(187,self.y+ 400 , 400, 400)];

这将调用上述5行代码,生成一个新的自定义视图,并将其添加到滚动视图中。我将self.y存储为当前正在构建的任何帧的y值。那么,如何使我的滚动视图自由地上下移动呢。屏幕显示添加时的自定义视图,但不允许我再向上移动。我想假设添加自定义视图5次,我添加了4次,我只想向上滚动,请看我添加了4次向下滚动,然后再添加1个自定义视图,并对其进行其他处理。但是我的滚动视图不起作用,它卡在刚刚添加的自定义视图上,使我无法向上滚动。如果你需要更多的信息,请问我。谢谢。

使用包含所有视图的自定义视图

1.)创建一个自定义类
myView
哪个子类
UIView

2.)在该视图类中添加所需的所有控件。
3.)在主视图中包含
myView

4.)启动任意多个
myView
,并将它们添加到主视图中

我希望这足够清楚,让你走


更新:如需详细说明bgoers的评论。
当您创建一个新类
myView
子类
UIView
时,您会得到一张空表。此工作表将具有您在类中或启动时指定的框架(由您决定)。在该框架内(
initWithFrame
中的
myView.h
myView.m
),可以添加按钮或标签等子视图。这些子视图将相对于图纸视图放置

例如,绘图是包含所有控件的自定义视图。我可以通过简单地启动另一个自定义视图而不添加更多的子视图来创建另一个与之完全相同的视图。我所需要做的就是将第二个自定义视图移动到我想要的位置,所有子视图都将随之移动


我鼓励您阅读如何子类化以及如何在iOS中工作。一旦你掌握了窍门,它就非常简单了

使用包含所有视图的自定义视图

1.)创建一个自定义类
myView
哪个子类
UIView

2.)在该视图类中添加所需的所有控件。
3.)在主视图中包含
myView

4.)启动任意多个
myView
,并将它们添加到主视图中

我希望这足够清楚,让你走


更新:如需详细说明bgoers的评论。
当您创建一个新类
myView
子类
UIView
时,您会得到一张空表。此工作表将具有您在类中或启动时指定的框架(由您决定)。在该框架内(
initWithFrame
中的
myView.h
myView.m
),可以添加按钮或标签等子视图。这些子视图将相对于图纸视图放置

例如,绘图是包含所有控件的自定义视图。我可以通过简单地启动另一个自定义视图而不添加更多的子视图来创建另一个与之完全相同的视图。我所需要做的就是将第二个自定义视图移动到我想要的位置,所有子视图都将随之移动


我鼓励您阅读如何子类化以及如何在iOS中工作。一旦你掌握了窍门,它就非常简单了

UIButton*btn=[UIButton button类型:uibuttontyperoundredect];[self.view addSubview:btn],根据需要扩展和配置。@H2CO3。谢谢我确实试过了。我可以动态添加按钮、标签等。我的问题是,我们是否可以将所有控件添加到“特殊自定义控件”中,当用户单击“添加更多”时,将此控件添加到底部。iOS有这样的功能吗(比如ASP.NET中的repeater)。我不这么认为,但这样你就可以实现你自己的功能了。
UIButton*btn=[UIButton-Button-WithType:uiButtonyPeroundRect];[self.view addSubview:btn],根据需要扩展和配置。@H2CO3。谢谢我确实试过了。我可以动态添加按钮、标签等。我的问题是,我们是否可以将所有控件添加到“特殊自定义控件”中,当用户单击“添加更多”时,将此控件添加到底部。iOS有这样的东西吗(比如ASP.NET中的repeater)。我不这么认为,但这样你可以实现你自己的。谢谢。好的,我可以创建这样的视图,并将所有控件添加到.h文件中。但是我如何让它们被放置在特定的位置呢。如果你看到我的模型,一行有6个标签,下一行有4个文本字段和2个下拉列表,下一行有2个标签,下面还有2个文本框。最后是两个按钮。所以我的控件分布在5行上。我怎样才能把它们做成那样?怎样把它们像那样散开。我是iOS新手。所以请原谅我,如果这是一部小说