0

我在 AppDelegate.m 文件中创建了 UIImageView 和 UILabel 以显示标题图像
我的默认方向是横向模式,但我无法正确显示图像,如下图所示UIImage 处于横向模式

所需的结果应该如下图所示

在此处输入图像描述

我还尝试在我的AppDelegate.m文件中旋转图像和标签这是我的代码
但它不显示图像并且标题只是消失了。

 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    // Override point for customization after application launch.
    UIViewController *viewController1 = [[LMSFirstViewController alloc] initWithNibName:@"LMSFirstViewController" bundle:nil];
    UIViewController *viewController2 = [[LMSSecondViewController alloc] initWithNibName:@"LMSSecondViewController" bundle:nil];
    UIViewController *viewController3 = [[LMSThirdViewController alloc] initWithNibName:@"LMSThirdViewController" bundle:nil];

    UILabel *title=[[UILabel alloc]initWithFrame:CGRectMake(50, 0, 5000, 50)];
    title.text=@"Library Management System";
    [title setFont:[UIFont systemFontOfSize:24]];
    [title setBackgroundColor:[UIColor colorWithRed:0 green:0 blue:0 alpha:0]];
    title.textColor=[UIColor redColor];
    title.transform=CGAffineTransformMakeRotation(M_PI_2);


    UIImageView *imageView=[[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 5000, 50)];

    imageView.image=[UIImage imageNamed:@"LMS.jpg"];
    imageView.transform=CGAffineTransformMakeRotation(M_PI_2);


    self.tabBarController = [[UITabBarController alloc] init];
    self.tabBarController.viewControllers = [NSArray arrayWithObjects:viewController1, viewController2,viewController3,nil];

    self.window.rootViewController = self.tabBarController;
    [self.window makeKeyAndVisible];
    [self.window addSubview:imageView];
    [self.window addSubview:title];
    return YES;
}
4

2 回答 2

0

您创建了要以纵向模式显示的视图。因此它显示如下

当应用程序进入横向模式时,会在此过程中调用一些方法,并使用这些方法重新构建视图。

看看这个问题

于 2013-04-03T07:35:16.923 回答
0

谢谢大家的回复,

我没有在 AppDelegate.m 中创建 UIImageView 和 UILabel,而是将
它写在我的viewController.m文件中并且它可以正常工作

-(void)viewDidLoad{
     UILabel *title=[[UILabel alloc]initWithFrame:CGRectMake(50, 0, 5000, 50)];
    title.text=@"Library Management System";
    [title setFont:[UIFont systemFontOfSize:24]];
    [title setBackgroundColor:[UIColor colorWithRed:0 green:0 blue:0 alpha:0]];
    title.textColor=[UIColor redColor];


    UIImageView *imageView=[[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 5000, 50)];

    imageView.image=[UIImage imageNamed:@"LMS.jpg"];
    [self.view addSubView:imageView];
    [self.view addSubView:title];

}

它会根据您在 iOS 6 中的方向自动旋转 UIImageView 和 UILabel

我不知道这种方法是否正确,因为如果您希望在项目的每个视图中显示某些内容,则应该将其写入AppDelegate.m文件中
。不是更好的编程,您不应该在每个视图中对其进行编码,而应该在AppDelegate.m文件中实现它但就我而言,我得到了结果。
我会尝试解决它。

于 2013-04-03T07:59:10.700 回答