我是iPhone开发的新手。现在我想用水平滚动显示40个文本字段..
我已使用以下代码创建了此UITextField
。
// Create the scrollView:
UIScrollView *scrViewRankTracker = [[UIScrollView alloc] initWithFrame: CGRectMake(0, 0, 320, 200)];
[scrViewRankTracker setContentSize: CGSizeMake(1200, 200)];
[self.view addSubview:scrViewRankTracker];
scrViewRankTracker.delegate = self;
CGRect frame = CGRectMake(10, 10, 80, 150);
[scrViewRankTracker scrollRectToVisible: frame animated:YES];
float x = 10;
float y = 10;
float width = 100;
float height = 30;
// Create the textfield using for loop:
for(int textFieldIndex =0;textFieldIndex<40;textFieldIndex++)
{
tfRankTracker = [[UITextField alloc]initWithFrame:CGRectMake(x, y, width, height)];
tfRankTracker.returnKeyType = UIReturnKeyDone;
[tfRankTracker setTag:textFieldIndex+1];
[tfRankTracker setBorderStyle:UITextBorderStyleRoundedRect];
[tfRankTracker setDelegate:self];
[scrViewRankTracker addSubview:tfRankTracker];
x = x + width + 20;
if((textFieldIndex+1)%10==0)
{
x = 10;
y = y + height + 20;
}
}
此代码的输出将显示如下 实施例
1 2 3 4 5 6 7 8 9 10
11 12 13 14 15 16 17 18 19 20
21 22 23 24 25 26 27 28 29 30
31 32 33 34 35 36 37 38 39 40
现在,假设如果我删除no.4的文本字段而不是no.14将代替no.4 ... no.24将取代no.14而no.34将取代没有24的地方......
有人可以帮帮我!!!!! 感谢
答案 0 :(得分:0)
为所有UITextField
设置与您所拥有的序列相似的标签..然后..
-(void)onDelete:(UITextField *)textField{
int curTag=textField.tag;
int tagToReplace=curTag+10;
UITextField *textFieldToReplace=[self.view viewWithTag:tagToReplace];
[UIView animateWithDuration:.3 animations:^{
textFieldToReplace.frame=textField.frame;
}];
}
上面的代码应该做你需要的,可能需要一些调整。
希望这有帮助。
答案 1 :(得分:0)
您应该使用collectionViewController
来解决问题。 tutorial 会一步一步指导您。