动态更新IOS中视图上的按钮?

时间:2012-08-22 23:44:12

标签: ios button

我希望我可以清楚地问这个问题,我有一个viewController我以编程方式构建(不是用NIB),这个视图控制器有两个按钮,我在视图的下半部分绘制

“prev”和“next”我想做的是,当我到达“结束”时,我只想画“prev”按钮,而不是“下一个”,而不是-versa,当我刚开始的时候,我只想画“下一个”而不是上一个。

关于如何处理此事的任何一般性想法?

谢谢,

UBA

2 个答案:

答案 0 :(得分:1)

您可以使用UIButton的“隐藏”属性:

if (page == firstPage) {
    self.myButtonPrev.hidden = YES;
} else {
    self.myButtonPrev.hidden = NO;
}

if (page == lastPage) {
    self.myButtonNext.hidden = YES;
} else {
    self.myButtonNext.hidden = NO;
}

答案 1 :(得分:1)

首先要做的是为你的按钮添加目标以听取触摸事件

[yourButtonNameHere addTarget:self action:@selector(yourCallBackFunctionNameHere:) forControlEvents:UIControlEventTouchUpInside];

这样做只要按下按钮就会调用yourCallBackFunctionNameHere函数。也可以为其他按钮执行此操作。 函数后面的半冒号表示函数必须发送导致事件发生的UIElement的信息。

为两个按钮分配标签。

youButtonNameHere.tag=yourTag;

在功能中检查哪个按钮通过比较标签发送UIcontrolEvent

- (void)yourFunctionNameHere:(id)sender {
   UIButton *yourButton =(UIButton *)sender;

    if(yourButton.tag==501){

      // logic to check if this is the first or last page and act accordingly
       yourButton.hidden = YES / NO based on what you want to do.
     }else{  
     // logic to do otherwise.
     }