Отображение наложения на изображение - PullRequest
1 голос
/ 15 марта 2012

Использование этого урока: http://www.techotopia.com/index.php/An_Example_iOS_4_iPhone_Camera_Application_%28Xcode_4%29 Я отобразил на интерфейсе изображение из библиотеки фотографий. Я хотел бы просто наложить базовый текст или форму (например, квадрат) на UIImage. Есть ли простой способ сделать это?

Спасибо.

Ответы [ 2 ]

2 голосов
/ 15 марта 2012

У вас есть только UIImage или вы отображаете его с помощью UIImageView?

Если у вас есть UIImageView, то вы можете просто добавить UILabel в качестве вспомогательного представления для вашего изображения.

Предполагая, что ваш UIImageView называется myImageView ...

// Create and init the label with any rect. 
UILabel *myLabel = [[UILabel alloc] initWithFrame:myImageView.frame]; // The lable has the same size as the Image has.
mylabel.text = @"the text";
[myImageView addSubview:myLabel];
//A subview's coordinates are within its superview's coordinates. 
mylabel.center = CGPointMake(myImageView.frame.size.width/2,myImageView.frame.size.height/2) // aligning the centers of the views
//An alternative could be transforming the image's center into the coordinate system of its superviews. That code would look smarter but his example is imho easier to understand.

//Setting front, size, alpha, background colour ... 
... 
0 голосов
/ 16 марта 2012

Вы можете создать подкласс UIView, сделать его прозрачным и добавить экземпляр этого класса того же размера, что и ваше изображение, в качестве вложенного подпредставления поверх изображения.Затем, когда вы хотите отобразить что-то поверх изображения, вызовите setNeedsDisplay для прозрачного подпредставления и нарисуйте все, что вы хотите (цветные прямоугольники, текст и т. Д.) В обратном вызове drawRect этого представления.

Длясделать подкласс UIView прозрачным, добавьте это в метод класса initWithFrame класса представления:

[ self setBackgroundColor:[ UIColor clearColor ] ];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...