I am trying to set up an External Display running at 1920x1080 from an iPad 4 (model MD513LL/A) through a Lightning AV Adapter. When I parse through each of the available modes, I see the following:
I have tested this with three modern (1-2 years old) TVs and gotten the same results on each display, without ever seeing 1920x1080. Here is the code I am using for the external display.
EDIT: I have discovered that this is a problem ONLY with the Lightning Digital AV Adapter, not the original Digital AV Adapter.
if ([[UIScreen screens] count] > 1)
{
UIScreen *secondScreen = [[UIScreen screens] objectAtIndex:1];
NSString *availableModeString;
for (int i = 0; i < secondScreen.availableModes.count; i++)
{
availableModeString = [NSString stringWithFormat:@"%f, %f",
((UIScreenMode *)[secondScreen.availableModes objectAtIndex:i]).size.width,
((UIScreenMode *)[secondScreen.availableModes objectAtIndex:i]).size.height];
[[[UIAlertView alloc] initWithTitle:@"Available Mode" message:availableModeString delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil] show];
availableModeString = nil;
}
// undocumented value 3 means no overscan compensation
secondScreen.overscanCompensation = 3;
self.secondWindow = [[UIWindow alloc] initWithFrame:CGRectMake(0, 0, 1280, 720)];
self.secondWindow.backgroundColor = [UIColor blueColor];
self.secondWindow.screen = secondScreen;
T9SecondaryScreenViewController *viewController = [[T9SecondaryScreenViewController alloc] initWithNibName:@"T9SecondaryScreenViewController" bundle:nil];
self.secondWindow.rootViewController = viewController;
self.secondWindow.hidden = NO;
}
Unfortunately this adapter is not capable of 1080p.