0

I want to add total 5 button at bottom of screen but only four will be visible at first time loading of nib.

and if user press first button it will be disappear with animation and second button will come at place of first . and now in screen one more button (button 5 ) at last.

to make it more clear i am adding image.

screen 1. when nib loaded first time.

screen 2. when button 1 pressed.

screen 3. when button 2 pressed.

enter image description here

4

2 回答 2

1

这样的事情怎么样?它并不完美,所以你必须玩它,但它应该让你朝着正确的方向开始......

在你的 .h

IBOutlet UIButton *firstButton, *secondButton, *thirdButton, *fourthButton
NSArray *buttonsArray;

在你的 .m

-(void)viewDidLoad{
    // VDL stuff
    buttonsArray = [NSArray arrayWithObjects:@"One", @"Two", @"Three", @"Four", @"Five", @"Six", nil];
    [firstButton setTitle:[buttonsArray objectAtIndex:0]];
    [firstButton setTag:0];
    // initial setup of the other three buttons works the same way
}

-(IBAction)updateButtons:(id)sender{
    UIButton *btn = (UIButton*)sender;
    int index = btn.tag;
    for(int i = 0; i <4; i++){
        if([buttonsArray count] > index+i){
            switch(i){
                case 0:;
                    [firstButton setTitle:[buttonsArray objectAtIndex:i+index]];
                    [firstButton setTag:i+index];
                    break;
                case 1:; //secondButton
                    break;
                case 2:; //thirdButton
                    break;
                case 3:; //fourthButton
                    break;
            }
        }else{
            break;
        }
    }
}

然后你需要做的就是将屏幕上的四个按钮连接到动作,否则你需要一些逻辑(与上面的开关盒几乎相同)来隐藏它们,一旦你接近结束如果这就是你想要做的,数组。

于 2012-04-21T10:21:25.943 回答
1

因为您尚未发布您尝试过的任何代码。

所以这里有一些我可以建议给你的想法。

如果您想在按下按钮时消失,而不是将其从视图中移除,您可以将其保留在那里但只会使其不可见,可以通过设置“视图的视觉外观”的属性(查找 UIView 类参考)例如。alpha 值,隐藏属性。

一旦你看不见它,然后在延迟一段时间后让它可见,例如 1/2 秒。一旦按钮可见,然后更改标签文本。

如果是你,你需要设置所有四个按钮的 UILabel 文本;通过将 label-text int 值增加 1。

于 2012-04-21T09:37:45.057 回答