我正在开发一款应用。在应用程序中,我为ios7和ios6编写了一个3.5英寸屏幕和4英寸屏幕的代码。我拿了一个视图控制器;在这个视图控制器中我想显示两个图像,一个用于顶部,另一个用于底部。还显示登录和注销按钮并登录Tableview。在ios7& ios6 3.5英寸屏幕和4英寸屏幕上,显示两个图像(如顶部图像和底部图像)没有问题。这两个图像正确显示。但是没有显示按钮和UITableview。我无法理解显示UIButton和UITableview的问题所在。任何人都请给我一些想法。我是编程新手。提前谢谢。
以下是我的代码。
Viewcontroller.m(适用于ios7和ios6的3.5英寸和4英寸屏幕)。
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 )];
// Button Login for ios7 4-inches screen.
btnLogin.frame = CGRectMake(20, 230, 127, 32);
// Create Login for UITableview
tableVw=[[UITableView alloc] initWithFrame:CGRectMake(0, 80, 320, 123) style:UITableViewStyleGrouped];
}
else
{
imgLogo=[[UIImageView alloc]initWithFrame:CGRectMake(75, 45, 162, 57)];
imgBuilding=[[UIImageView alloc]initWithFrame:CGRectMake(8, 395, 300, 153 )];
// Button Login for ios6 4-inches screen.
btnLogin.frame = CGRectMake(20, 230, 127, 32);
tableVw=[[UITableView alloc] initWithFrame:CGRectMake(0, 80, 320, 123) style:UITableViewStyleGrouped];
}
imgLogo.image=[UIImage imageNamed:@"Logo-01.png"];
[self.view addSubview:imgLogo];
imgBuilding.image=[UIImage imageNamed:@"image-02.png"];
imgBuilding.alpha=0.4;
[self.view addSubview:imgBuilding];
btnLogin = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[btnLogin addTarget:self action:@selector(login) forControlEvents:UIControlEventTouchDown];
[btnLogin setBackgroundImage:[UIImage imageNamed:@"Sign-in-button.png"] forState:UIControlStateNormal];
[self.view addSubview:btnLogin];
// create Login tableview properties
tableVw.dataSource = self;
tableVw.delegate = self;
tableVw.backgroundColor=[UIColor clearColor];
tableVw.scrollEnabled=NO;
tableVw.scrollsToTop=NO;
[self.view addSubview:tableVw];
}
/ * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** / /*适用于ios6和ios7的3.5英寸屏幕 * ** * ** * ** * ** * ** * ** * ** * ** * ** * *** /
/ * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** /
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 )];
btnLogin.frame = CGRectMake(20, 200, 127, 32);
// create Login Tableview
tableVw=[[UITableView alloc] initWithFrame:CGRectMake(10, 85, 300, 123) style:UITableViewStyleGrouped];
}
else
{
imgLogo=[[UIImageView alloc]initWithFrame:CGRectMake(75, 50, 162, 57)];
imgBuilding=[[UIImageView alloc]initWithFrame:CGRectMake(0, 325, 320,140 )];
btnLogin.frame = CGRectMake(20, 200, 127, 32);
tableVw=[[UITableView alloc] initWithFrame:CGRectMake(10, 85, 300, 123) style:UITableViewStyleGrouped];
}
imgLogo.image=[UIImage imageNamed:@"Logo-01.png"];
[self.view addSubview:imgLogo];
imgBuilding.image=[UIImage imageNamed:@"image-02.png"];
imgBuilding.alpha=0.4;
[self.view addSubview:imgBuilding];
// Create Button Properties
btnLogin = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[btnLogin addTarget:self action:@selector(login) forControlEvents:UIControlEventTouchDown];
[btnLogin setBackgroundImage:[UIImage imageNamed:@"Sign-in-button.png"] forState:UIControlStateNormal];
[self.view addSubview:btnLogin];
// Create Login Tableview properties
tableVw.dataSource = self;
tableVw.delegate = self;
tableVw.backgroundColor=[UIColor clearColor];
tableVw.scrollEnabled=NO;
tableVw.scrollsToTop=NO;
[self.view addSubview:tableVw];
}
}
答案 0 :(得分:1)
试试这段代码。我对你的代码进行了修改。
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
if ([self respondsToSelector:@selector(edgesForExtendedLayout)])
self.edgesForExtendedLayout = UIRectEdgeNone;
UIImageView *imgLogo;
UIImageView *imgBuilding;
UIButton *btnLogin = [UIButton buttonWithType:UIButtonTypeCustom];
UITableView *tableVw;
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 )];
btnLogin.frame = CGRectMake(20, 230, 127, 32);
tableVw=[[UITableView alloc] initWithFrame:CGRectMake(0, 123, 320, 100) style:UITableViewStylePlain];
}else{
imgLogo=[[UIImageView alloc]initWithFrame:CGRectMake(75, 45, 162, 57)];
imgBuilding=[[UIImageView alloc]initWithFrame:CGRectMake(8, 395, 300, 153 )];
btnLogin.frame = CGRectMake(20, 210, 127, 32);
tableVw=[[UITableView alloc] initWithFrame:CGRectMake(0, 103, 320, 100) style:UITableViewStylePlain];
}
imgLogo.image=[UIImage imageNamed:@"icon.png"];
[self.view addSubview:imgLogo];
imgBuilding.image=[UIImage imageNamed:@"icon.png"];
imgBuilding.alpha=0.4;
[self.view addSubview:imgBuilding];
[btnLogin addTarget:self action:@selector(login) forControlEvents:UIControlEventTouchDown];
[btnLogin setBackgroundColor:[UIColor blackColor]];
[self.view addSubview:btnLogin];
tableVw.scrollEnabled=NO;
tableVw.scrollsToTop=NO;
tableVw.dataSource=self;
tableVw.delegate=self;
[self.view addSubview:tableVw];
}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 )];
btnLogin.frame = CGRectMake(20, 230, 127, 32);
tableVw=[[UITableView alloc] initWithFrame:CGRectMake(10, 127, 300, 100) style:UITableViewStylePlain];
}else{
imgLogo=[[UIImageView alloc]initWithFrame:CGRectMake(75, 50, 162, 57)];
imgBuilding=[[UIImageView alloc]initWithFrame:CGRectMake(0, 325, 320,140 )];
btnLogin.frame = CGRectMake(20, 200, 127, 32);
tableVw=[[UITableView alloc] initWithFrame:CGRectMake(10, 85, 300, 123) style:UITableViewStylePlain];
}
imgLogo.image=[UIImage imageNamed:@"icon.png"];
[self.view addSubview:imgLogo];
imgBuilding.image=[UIImage imageNamed:@"icon.png"];
imgBuilding.alpha=0.4;
[self.view addSubview:imgBuilding];
[btnLogin addTarget:self action:@selector(login) forControlEvents:UIControlEventTouchDown];
btnLogin.backgroundColor=[UIColor blackColor];
[self.view addSubview:btnLogin];
tableVw.dataSource = self;
tableVw.delegate = self;
tableVw.scrollEnabled=NO;
tableVw.scrollsToTop=NO;
[self.view addSubview:tableVw];
}
}
- (NSInteger)numberOfSectionsInTableView:(UITableView *)aTableView
{
return 1;
}
- (NSInteger)tableView:(UITableView *)aTableView numberOfRowsInSection:(NSInteger)section
{
return 2;
}
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
return 40;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
NSString *CellIdentifier =[NSString stringWithFormat:@"%D",indexPath.row];
UITableViewCell *cell=[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
cell=[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
cell.textLabel.text=@"1";
return cell;
}