UI Проблема с кал календарем для IPad? - PullRequest
7 голосов
/ 12 января 2012

У меня проблема с пользовательским интерфейсом Kal Calendar для iPad.На iPad пустое место, но на iPhone все нормально.Как я могу заставить его вписаться в рамку на iPad?

if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone)
{
    [kal.view setFrame:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height)];
}
else if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
{
    [kal.view setFrame:CGRectMake(0, 0,768 ,1004)];

}

Я пытался использовать код, указанный выше, но он не работал для меня!

enter image description here

1 Ответ

13 голосов
/ 12 января 2012

в KalGridView.m вы найдете это.

const CGSize kTileSize = { 46.f, 44.f };

Я бы изменил код на свойство, где вы можете динамически устанавливать кадр в соответствии с идиомой и / или ориентацией.

в KalGridView.m

 const CGSize kTileSize = { 109.0f, 109.0f };

и KalView.m

- (void)addSubviewsToHeaderView:(UIView *)headerView

  …

  for (CGFloat xOffset = 0.f; xOffset < headerView.width; xOffset += 109.f, i = (i+1)%7) {
    CGRect weekdayFrame = CGRectMake(xOffset, 30.f, 109.f, kHeaderHeight - 29.f);
    UILabel *weekdayLabel = [[UILabel alloc] initWithFrame:weekdayFrame];
    weekdayLabel.backgroundColor = [UIColor clearColor];
    weekdayLabel.font = [UIFont boldSystemFontOfSize:10.f];
    weekdayLabel.textAlignment = UITextAlignmentCenter;
    weekdayLabel.textColor = [UIColor colorWithRed:0.3f green:0.3f blue:0.3f alpha:1.f];
    weekdayLabel.shadowColor = [UIColor whiteColor];
    weekdayLabel.shadowOffset = CGSizeMake(0.f, 1.f);
    weekdayLabel.text = [weekdayNames objectAtIndex:i];
    [headerView addSubview:weekdayLabel];
    [weekdayLabel release];
  }
}

приводит к:

screenshot

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...