1

画面に表示されているView Controllerが「PrimaryViewController」である場合にアラートを表示しようとしていますが、View Controllerの名前を取得してNSStringに変換する方法が正確にわかりません...どんな助けも非常に高く評価されます! !!

//get name of current view controller
UIViewController *currentVC = self.navigationController.visibleViewController;
if ([currentVC isEqualToString:@"PrimaryViewController"])
{
    //display name of current view controller in alert    
    UIAlertView *alert = [[UIAlertView alloc]
initWithTitle:@"Your current view controller:" message:currentVC delegate:nil 
cancelButtonTitle:@"OK" otherButtonTitles:nil];
    [alert show];
}
4

4 に答える 4

6

使用できますNSStringFromClass()。クラスの名前を文字列として返します。

サンプルコード:

if ([NSStringFromClass([currentVC class]) isEqualToString:@"PrimaryViewController"])
{
    UIAlertView *alert = [[UIAlertView alloc]
    initWithTitle:@"Your current view controller:" message:NSStringFromClass([currentVC class]) delegate:nil 
    cancelButtonTitle:@"OK" otherButtonTitles:nil];
    [alert show];
}
于 2013-06-08T07:46:04.690 に答える
2
UIAlertView *alert = [[UIAlertView alloc]
initWithTitle:@"Your current view controller:" message:NSStringFromClass([currentVC class]) delegate:nil 
cancelButtonTitle:@"OK" otherButtonTitles:nil];
[alert show];
于 2013-06-08T07:32:28.410 に答える
2

として使用できます

if ([NSStringFromClass([self class]) isEqualToString:@"PrimaryViewController"])

これを使用して、クラスの名前を取得します。

NSString * name = NSStringFromClass([self class]);

また

NSString * name = NSStringFromClass([currentVC class]);
于 2013-06-08T07:36:12.340 に答える