作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这是我一直无法动脑筋的事情……
假设我正在构建一个宽 8 个 UIViews 高 8 个 UIViews 的网格。它可以由任何 x, y 集合。它不必是 8 x 8。让我们随意并暂时坚持下去。
这个 init 方法(UIView 的子类的一部分)生成一个 8 行宽的 UIView:
- (id)initWithFrame:(CGRect)frame {
if ((self = [super initWithFrame:frame])) {
int x = 1;
int y = 1;
//row 01
UIView* row01Square01 = [[UIView alloc] initWithFrame:CGRectMake((0*x), (0*y), x, y)];
[self addSubview:row01Square01];
UIView* row01Square02 = [[UIView alloc] initWithFrame:CGRectMake((1*x), (0*y), x, y)];
[self addSubview:row01Square02];
UIView* row01Square03 = [[UIView alloc] initWithFrame:CGRectMake((2*x), (0*y), x, y)];
[self addSubview:row01Square03];
UIView* row01Square04 = [[UIView alloc] initWithFrame:CGRectMake((3*x), (0*y), x, y)];
[self addSubview:row01Square04];
UIView* row01Square05 = [[UIView alloc] initWithFrame:CGRectMake((4*x), (0*y), x, y)];
[self addSubview:row01Square05];
UIView* row01Square06 = [[UIView alloc] initWithFrame:CGRectMake((5*x), (0*y), x, y)];
[self addSubview:row01Square06];
UIView* row01Square07 = [[UIView alloc] initWithFrame:CGRectMake((6*x), (0*y), x, y)];
[self addSubview:row01Square07];
UIView* row01Square08 = [[UIView alloc] initWithFrame:CGRectMake((7*x), (0*y), x, y)];
[self addSubview:row01Square08];
}
return self;
最佳答案
你的意思是:
for (int i=0;i<8;i++) {
UIView* square = [[UIView alloc] initWithFrame:CGRectMake((i*x), (0*y), x, y)];
[self addSubview:square];
}
for(int r=0;r<8;r++) {
for (int i=0;i<8;i++) {
UIView* square = [[UIView alloc] initWithFrame:CGRectMake((i*x), (r*y), x, y)];
[self addSubview:square];
}
}
关于iphone - 从单个方法实例化一定数量的唯一对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4100213/
我正在尝试开发右边框/Angular 具有特定 Angular (30°) 的表格。我见过一些类似的解决方案,但它们都无法在一定程度上发挥作用。如果我想从 30° 改变到 20°,我不想花太多力气。
我是一名优秀的程序员,十分优秀!