UIGraphicsBeginImageContextWithOptions of UIsegmented button

У меня есть экран с текстом, метками и кнопкой Uisegmented. Я хочу сделать полный снимок экрана и сохранить как изображение.

Это код.

UIGraphicsBeginImageContextWithOptions(self.view.bounds.size, self.view.opaque, 0.0);
[self.myView.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage*theImage=UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

NSData*theImageData=UIImageJPEGRepresentation(theImage, 1.0 ); //you can use PNG too
[theImageData writeToFile:@"example.jpeg" atomically:YES];

Но опция, выбранная в кнопке Uisegmented, кажется заполненной непрозрачной. Я изменил второй параметр в UIGraphicsBeginImageContextWithOptions на false. Пока я вижу, что это заполнено. Есть что-то, что я пропускаю?

Вот изображение.

1 ответ

Проблема кажется специфической для UISegmentedControl учебный класс. Я не знаю, почему это происходит, но что-то вроде этого должно сработать.

[segmentedControl setTitleTextAttributes:@{NSForegroundColorAttributeName : [UIColor orangeColor]} forState:UIControlStateNormal];

Возможно, эта информация будет полезна для дальнейшего изучения проблемы для вас.

Другие вопросы по тегам