2010-09-26 26 views
5

UIImage öğesine sınırlar koymanın bir yolu var mı? UIImageView için nasıl ayarlanacağını biliyorum, ama benim UIImageView'la yüklediğim UIImage, UIImageView ile aynı boyutta veya en boy oranına sahip olmayacağımı biliyorum. Bu yüzden UIImageView modunu en uygun hale getirdi. UIImageView'a bir sınır vermek, UIImageView yerine UIImageView'ın tamamını sınırlar ve UIImage UIV ile aynı boyutta veya en boy oranına sahip olmadığında iyi görünmez.UIImage kenarlığı ayarlama

Yardım?

cevap

3

bu soruya bazı çözümler vardır: Burada How can i take an UIImage and give it a black border?

+0

İki sorun. Diğer bir soru, bir UIImageView kullanarak değil, doğrudan bir UIImage oluşturma hakkındadır. Ayrıca, en iyi çözüm sınırın UIImageView içindeki görüntüyü değil, UIImageView çerçevesinin etrafına yerleştirir. –

+0

Aslında, diğer soru benzer, burada yardımcı olmayan sadece popüler bir cevap. –

0
image with border 

+(UIImage*)imageWithBorderFromImage:(UIImage*)source 
{ 

    CGSize size = [source size]; 

    UIGraphicsBeginImageContext(size); 
    CGRect rect = CGRectMake(0, 0, size.width, size.height); 
    [source drawInRect:rect blendMode:kCGBlendModeNormal alpha:1.0]; 

    CGContextRef context = UIGraphicsGetCurrentContext(); 
    CGContextSetRGBStrokeColor(context,(255/255.f),(255/255.f),(255/255.f), 1.0); 
    CGContextStrokeRect(context, rect); 
    UIImage *testImg = UIGraphicsGetImageFromCurrentImageContext(); 
    UIGraphicsEndImageContext(); 
    return testImg; 
} 
+0

Kenarlık genişliğini nasıl ayarlayabilirim? – alexmorhun

1
#import <QuartzCore/CALayer.h> 


UIImageView *imageView = [UIImageView alloc]init]; 
imageView.layer.masksToBounds = YES; 
imageView.layer.borderColor = [UIColor blackColor].CGColor; 
imageView.layer.borderWidth = 1; 
imageView.layer.cornerRadius = 10; //optional