簡體   English   中英

我如何編寫適用於iOS 6和iOS 7的iPhone 3.5英寸屏幕和4英寸屏幕的代碼

[英]how can i write the code for iphone 3.5 inches screen and 4 inches screen for ios6 & ios7

我正在開發一個應用程序。 在應用程序中,我為ios7&ios6的3.5英寸屏幕和4英寸屏幕編寫了代碼。 我帶了一個視圖控制器; 在此視圖控制器中,我想顯示兩個圖像,一個顯示在頂部,另一個顯示在底部。 在ios7 3.5英寸屏幕和4英寸屏幕上,顯示器沒有問題。 但是在4英寸屏幕和3.5英寸屏幕的ios6屏幕上,存在顯示問題。 這兩個圖像顯示不正確。 我不知道如何為4英寸和3.5英寸屏幕的ios6和ios7編寫相同的代碼。 任何人,請給我一些想法。 我是編程新手。 提前致謝。

下面是我的代碼。

Viewcontroller.m(適用於ios7和ios6的3.5英寸和4英寸屏幕)。

if ([[UIScreen mainScreen] bounds].size.height == 568)
{
    imgLogo=[[UIImageView alloc]initWithFrame:CGRectMake(75, 65, 162, 57)];

    imgLogo.image=[UIImage imageNamed:@"Logo-01.png"];

    [self.view addSubview:imgLogo];

    imgBuilding=[[UIImageView alloc]initWithFrame:CGRectMake(8, 415, 300, 153 )];

    imgBuilding.image=[UIImage imageNamed:@"image-02.png"];

    imgBuilding.alpha=0.4;

    [self.view addSubview:imgBuilding];
}
else
{
    imgLogo=[[UIImageView alloc]initWithFrame:CGRectMake(75, 70, 162, 57)];

    imgLogo.image=[UIImage imageNamed:@"Logo-01.png"];

    [self.view addSubview:imgLogo];

    imgBuilding=[[UIImageView alloc]initWithFrame:CGRectMake(0, 345, 320,140 )];

    imgBuilding.image=[UIImage imageNamed:@"image-02.png"];

    imgBuilding.alpha=0.4;

    [self.view addSubview:imgBuilding];
}

您必須檢查os是IOS 7或更早版本,並取決於已設置的imageView。

    UIImageView *imgLogo;
    UIImageView *imgBuilding;
    if ([[UIScreen mainScreen] bounds].size.height == 568)
    {
        if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7)
        {
            imgLogo=[[UIImageView alloc]initWithFrame:CGRectMake(75, 65, 162, 57)];
            imgBuilding=[[UIImageView alloc]initWithFrame:CGRectMake(8, 415, 300, 153 )];
        }
        else
        {
            imgLogo=[[UIImageView alloc]initWithFrame:CGRectMake(75, 45, 162, 57)];
            imgBuilding=[[UIImageView alloc]initWithFrame:CGRectMake(8, 395, 300, 153 )];

        }
        imgLogo.image=[UIImage imageNamed:@"icon.png"];

        [self.view addSubview:imgLogo];
        imgBuilding.image=[UIImage imageNamed:@"icon.png"];

        imgBuilding.alpha=0.4;

        [self.view addSubview:imgBuilding];
    }
    else
    {
        if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7)
        {
            imgLogo=[[UIImageView alloc]initWithFrame:CGRectMake(75, 70, 162, 57)];
            imgBuilding=[[UIImageView alloc]initWithFrame:CGRectMake(0, 345, 320,140 )];
        }
        else
        {
            imgLogo=[[UIImageView alloc]initWithFrame:CGRectMake(75, 50, 162, 57)];
            imgBuilding=[[UIImageView alloc]initWithFrame:CGRectMake(0, 325, 320,140 )];
        }
        imgLogo.image=[UIImage imageNamed:@"icon.png"];

        [self.view addSubview:imgLogo];
        imgBuilding.image=[UIImage imageNamed:@"icon.png"];

        imgBuilding.alpha=0.4;

        [self.view addSubview:imgBuilding];
    }

希望這會幫助你。

你可以通過做autoResizing又名“ 春和Struts”或利用最新的“ 自動布局 ”功能。
無論哪種方式,可以讓你保持一個單一的廈門國際銀行文件,而的位置和大小subViews保持不變( 具體取決於您所設置它的方式

可以通過xib / storyboard以及以編程方式設置它們。


Springs和Struts是以前的方法,但仍然可用:

  • 彈簧subView的拉伸能力
  • 支撐是放置能力,或者可以說是擁抱能力。 (即,它擁抱上界或下界或左或右)

鏈接:


自動布局要求您對約束的概念感到滿意
這需要一點點努力,但嘿,如果蘋果說更好,那肯定是

鏈接”


注意: 不能同時使用。 如果要使用Springs&Struts ,必須在視圖上禁用自動布局功能

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM