如何创建自定义循环组视图

时间:2017-08-16 18:14:13

标签: ios swift uiview uicollectionview

我在swift中为ios做了我的第一个应用程序,现在我想创建自定义视图,问题我找不到一个明确的导师或关于创建自定义视图的文档,如android https://developer.android.com/reference/android/view/ViewGroup.html

我实际上是想在iOS中创建一个自定义的圆形视图组,如果有人可以给我一个带注释代码的示例,如何在iOS中完成它,它将真正帮助我计划创建的所有其他自定义视图。

对于我的圆形视图组,我只想将每个基本视图(UIImageViewUIView,...)放在我的圆形视图组的中心,我读了关于UICollectionView的苹果文档和UIView,两者都可以包含零个或多个子视图,我不知道应该使用什么,UICollectionView似乎不如UICollectionView困难,但CustomCollectionLayout似乎更合适我想做什么(也许我错了)但是如何实现CustomUICollectionView以及如何在UIView中设置此布局,因为我计划在将来添加自定义绘图和动画。

我想要实现的最重要的事情:

  1. 我想从“对象库”(UIview或UICollectionView)拖动我的圆形组视图并放到我的视图控制器场景中,并使用“大小检查器”设置大小(宽度和高度)

  2. 我想默认保留项目大小,即我想从“对象库”中拖动所有项目,并从“大小检查器”中设置项目大小,

  3. 将每个项目中心(x,y)放置在ViewGroup

  4. 我希望在InterfaceBuilder中看到预览

  5. 那么我应该在哪个类中实现UICollectionView/* import com.amazonaws.services.elasticloadbalancingv2.AmazonElasticLoadBalancing; import com.amazonaws.services.elasticloadbalancingv2.AmazonElasticLoadBalancingClientBuilder; import com.amazonaws.services.elasticloadbalancingv2.model.DescribeLoadBalancersRequest; import com.amazonaws.services.elasticloadbalancingv2.model.DescribeLoadBalancersResult; */ import com.amazonaws.services.elasticloadbalancing.AmazonElasticLoadBalancing; import com.amazonaws.services.elasticloadbalancing.AmazonElasticLoadBalancingClientBuilder; import com.amazonaws.services.elasticloadbalancing.model.DescribeLoadBalancersRequest; import com.amazonaws.services.elasticloadbalancing.model.DescribeLoadBalancersResult; import org.junit.Test; public class AwsTestIT { /* @Test public void testGetLoadBalancers() { AmazonElasticLoadBalancing amazonElasticLoadBalancingClient = AmazonElasticLoadBalancingClientBuilder .defaultClient(); DescribeLoadBalancersResult result = amazonElasticLoadBalancingClient.describeLoadBalancers(new DescribeLoadBalancersRequest()); result.getLoadBalancers().stream().forEach(loadBalancer -> System.out .println("loadBalancer = " + loadBalancer)); } */ @Test public void testGetLoadBalancers() { AmazonElasticLoadBalancing amazonElasticLoadBalancingClient = AmazonElasticLoadBalancingClientBuilder .defaultClient(); DescribeLoadBalancersResult result = amazonElasticLoadBalancingClient.describeLoadBalancers(new DescribeLoadBalancersRequest()); result.getLoadBalancerDescriptions().stream().forEach(loadBalancer -> System.out .println("loadBalancer = " + loadBalancer)); } } ,以及我应该调用哪些方法,注释它的示例非常有用

0 个答案:

没有答案