-2

我在我的应用程序中遇到问题,问题解释如下,

#import <UIKit/UIKit.h>
@interface CLASS_A : UIViewController {
    UIButton *Btn_Push;    
    UILabel *lbl_no;
}
- (IBAction)Btn_PushPressed:(id)sender;
 @property (nonatomic, retain)  UILabel *lbl_no;
@end

#import "CLASS_A.h"
@implementation CLASS_A
@synthesize pdfFilePath;

- (IBAction)Btn_PushPressed:(id)sender
{
    CLASS_B  *obj_CLASS_B= [[CLASS_B alloc] initWithNibName:@"RTC_HomeVC" bundle:nil];
    [self.navigationController pushViewController:obj_CLASS_B animated:TRUE];
}
 @end

#import <UIKit/UIKit.h>
@interface CLASS_B : UIViewController {
    UIButton *Btn_Pop;
}
- (IBAction)Btn_PopPressed:(id)sender;
@end

#import "CLASS_B.h"
@implementation CLASS_B
- (void)viewDidLoad
{
}
- (IBAction)Btn_PopPressed:(id)sender
{

    [self.navigationController popToRootViewControllerAnimated:YES];
}
@end

这是我的两节课。单击 Btn_Push CLASS_A 时,推送 CLASS_B。并单击 CLASS_B CLASS_B 弹出 CLASS_A 的 Btn_Pop。

现在每次我推送和弹出 lbl_no 时都会增加 1。

例子:

  • CLASS_A 推送 CLASS_B lbl_no.text=@"0";

  • CLASS_B 弹出 CLASS_A lbl_no.text=@"1";

  • CLASS_A 推送 CLASS_B lbl_no.text=@"1";

  • CLASS_B 弹出 CLASS_A lbl_no.text=@"2";

  • CLASS_A 推送 CLASS_B lbl_no.text=@"2";

  • CLASS_B pop CLASS_A lbl_no.text=@"3";

  • CLASS_A 推送 CLASS_B lbl_no.text=@"3";

  • CLASS_B pop CLASS_A lbl_no.text=@"4";

所以我的问题是

1.我不想在CLASS_A中执行任何计算操作。您可以在 CLASS_B 中进行任何计算操作,这是必须的。也不想使用 AppDelegate 类、Singletone 类、NSNotification 和 NSUserDefaults。并且想要更改 lbl_no 的文本,如上所述。

那么我该怎么做呢?任何人都可以提供帮助。

谢谢。

4

1 回答 1

2

尝试这样的事情:

A级

// CLASS_A.h
#import <UIKit/UIKit.h>
@interface CLASS_A : UIViewController {
    UIButton *Btn_Push;    
    UILabel *lbl_no;
}
- (IBAction)Btn_PushPressed:(id)sender;
@property (nonatomic, retain)  UILabel *lbl_no;
@end

// CLASS_A.m
#import "CLASS_A.h"
#import "CLASS_B.h"
@implementation CLASS_A
@synthesize pdfFilePath;

- (IBAction)Btn_PushPressed:(id)sender
{
    CLASS_B  *obj_CLASS_B= [[CLASS_B alloc] initWithNibName:@"RTC_HomeVC" bundle:nil];
    obj_CLASS_B.delegate = self;
    [self.navigationController pushViewController:obj_CLASS_B animated:TRUE];
}
@end

B类

// CLASS_B.h
#import <UIKit/UIKit.h>
@class CLASS_A;
@interface CLASS_B : UIViewController {
    UIButton *Btn_Pop;
}
@property (weak, nonatomic) CLASS_A *delegate;
- (IBAction)Btn_PopPressed:(id)sender;
@end

// CLASS_B.m
#import "CLASS_B.h"
#import "CLASS_A.h"
@implementation CLASS_B
- (void)viewDidLoad
{
}
- (IBAction)Btn_PopPressed:(id)sender
{
    self.delegate.lbl_no.text = [NSString stringWithFormat:@"%d", ([self.delegate.lbl_no.text integerValue] + 1)];
    [self.navigationController popToRootViewControllerAnimated:YES];
}
@end
于 2013-02-27T10:21:32.263 回答