Может ли кто-нибудь помочь мне, я хочу добавить одно и то же изображение несколько раз по горизонтали с одинаковой высотой и шириной. Важно, что я динамически создаю образ изображения. Я хочу использовать одинаковый вид изображения для всех изображений! Это изображение Я хочу сделать это горизонтально , но нужна только одна строка.Как повторить изображение в динамическом создании в ios
ответ
это с пыльник Метод с использованием stretchableImageWithLeftCapWidth
как таким образом: -
UIImage *backgroundImage = [[UIImage imageNamed:@"SheetBackground.png"] stretchableImageWithLeftCapWidth:0.5 topCapHeight:0];
, как вол вашего примера необходимости: -
UIImage *backgroundImage = [[UIImage imageNamed:@"q4Ses.png"] stretchableImageWithLeftCapWidth:0.5 topCapHeight:0];
[_scro setBackgroundColor:[UIColor colorWithPatternImage:backgroundImage]];
И используя изображение
Это выход, как: -
[введите описание изображения здесь] [4]
вы можете установить это изображение как выше способ любому из UISCrollview
, UIView
, кнопки как пар! для этого вам не нужно forloop
.
UPDATE: -
Это выше код для всего фона, если вы хотите добавить только один lineof подряд, то вы должны создать один UIView, как пар вам нужно Hight и добавить установить его colorWithPatternImage
и добавить как Беллоу
UIImage *backgroundImage = [[UIImage imageNamed:@"q4Ses.png"]
stretchableImageWithLeftCapWidth:1 topCapHeight:0];
UIView *v=[[UIView alloc]
initWithFrame:CGRectMake(0, 0, _scro.frame.size.width, 45)];
[v setBackgroundColor:[UIColor
colorWithPatternImage:backgroundImage]];
[_scro addSubview:v];
И это Выход: -
Сделайте вид на высоту изображения. Но это представление может иметь любую ширину.
Затем установите изображение плитки в этом виде с помощью следующего кода.
UIImage *tiledImage = [UIImage imageNamed:@"myTiledImage.png"];
self.view.backgroundColor = [UIColor colorWithPatternImage:tiledImage];
Это позволит получить изображение, разбитое несколько раз по горизонтали.
Если вид распространяется изображение везде на экране, то вам необходимо добавить следующий код в ваш взгляд
self.view.clipToBounds = YES;
Уверены ли вы в этом? ... его не горизонтально ... все вокруг парка ... –
Что вы подразумеваете под «всем вокруг парка»? Я не получу вас ... – CodenameLambda1
Ni id on wanna apply background полностью требуется ширина 30, высота 40 –
UIScrollView *myScrollView=[[UIScrollView alloc]initWithFrame:CGRectMake(0, 0, 320, 480)];
CGFloat scrollWidth = 0.f;
for (int i=0;i<10;i++)//i=10,put as many image number u want to display
{
imageView = [[UIImageView alloc] initWithFrame:
CGRectMake(scrollWidth, 0, 80, 60.f)];
imageView.image=[UIImage imageNamed:@"urimagename"];
imageView.tag=i;
[myScrollView addSubview:imageView];
scrollWidth += 100;
}
myScrollView.contentSize = CGSizeMake(scrollWidth, 100);
EDIT:
Вы можете добиться этого в еще один способ.
Ответ на CodenameLambda1 лучше, чем приведенный выше. Но все же некоторые изменения должны быть выполнены в ответе @ CodenameLambda1 .., поскольку требование SOP отображать его в scrollview. Поэтому вместо self.view использовать scrollview.
UIScrollView *vie=[[UIScrollView alloc]initWithFrame:CGRectMake(0, 0, 320, 60)];
UIImage *tiledImage = [UIImage imageNamed:@"login"];
vie.backgroundColor = [UIColor colorWithPatternImage:tiledImage];
vie.contentSize=CGSizeMake(1400,60);
vie.clipsToBounds = YES;
[self.view addSubview:vie];
Вы используете scrollview? –
ya scrollview используя –
что вы хотите достичь? Вопрос непонятный ... – preetam