উত্তর:
আপনার যদি ইতিমধ্যে কোনও ইউআইআইমেজভিউতে আইবিআউটলেট থাকে, তবে আপনাকে যা করতে হবে তা হ'ল রিসিভারে (ইউআইআইমেজভিউ) একটি চিত্র গ্রহণ এবং সেট ইমেজ কল করতে হবে। একটি চিত্র দখল করার দুটি উদাহরণ নীচে রয়েছে। ওয়েব থেকে একটি, এবং একটি আপনি এক্সকোডে আপনার সংস্থান ফোল্ডারে যুক্ত করেন।
UIImage *image = [[UIImage alloc] initWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://farm4.static.flickr.com/3092/2915896504_a88b69c9de.jpg"]]];
অথবা
UIImage *image = [UIImage imageNamed: @"cell.png"];
একবার আপনার কোনও চিত্র হয়ে গেলে আপনি তারপরে ইউআইআইমেজভিউ সেট করতে পারবেন:
[imageView setImage:image];
উপরের লাইনটি চিত্র ভিউটি আপনার আইবিউটলেট বলে ধরেছে।
এটাই! আপনি অভিনবতা পেতে চাইলে আপনি ছবিটি কোনও ইউআইভিউতে যুক্ত করতে পারেন এবং তারপরে ট্রানজিশন যুক্ত করতে পারেন।
পিএস মেমরি পরিচালনা অন্তর্ভুক্ত নেই।
দ্রষ্টব্য যে দৃশ্যে দৃশ্যের যোগ না হওয়া অবধি NIB ফাইল সমস্ত আইবিআউটলেটগুলি ওয়্যার আপ করে না। যদি আপনি ম্যানুয়ালি জিনিসগুলি তারের করে রাখেন (যা জিনিসগুলি পৃথক এনআইবিতে থাকে তবে আপনি যা করতে পারেন) এটি মনে রাখা গুরুত্বপূর্ণ।
সুতরাং যদি আমার পরীক্ষার দৃশ্যের নিয়ন্ত্রকের কোনও নিব দ্বারা ওয়্যার্ড করা "চিত্রকল্প" থাকে তবে এটি সম্ভবত কাজ করবে না:
testCardViewController.imageView.image = [UIImage imageNamed:@"EmptyCard.png"];
[self.view addSubview:testCardViewController.view];
তবে এটি করবে:
[self.view addSubview:testCardViewController.view];
testCardViewController.imageView.image = [UIImage imageNamed:@"EmptyCard.png"];
imageView.image = [UIImage imageNamed:@"myImage.png"];
লোকেরা তাদের সমস্যা সমাধানের চেষ্টা করার জন্য এটি গুগল করছে, আপনার শিরোনাম ফাইলটিতে সম্পত্তিটি সঠিকভাবে ঘোষণা করা এবং আপনার বাস্তবায়নের ফাইলে ইউআইআইমেজভিউ সংশ্লেষিত করা মনে রাখবেন ... প্রোগ্রামটিকে ছাড়াই চিত্রটি সেট করা শক্ত হবে'll গেটর এবং সেটার পদ্ধতি।
#import <UIKit/UIKit.h>
@interface YOURCONTROLLERNAME : UIViewController {
IBOutlet UIImageView *imageToDisplay;
}
@property (nonatomic, retain) IBOutlet UIImageView *imageToDisplay;
@end
এবং তারপরে আপনার। মি:
@implementation YOURCONTROLLERNAME
@synthesize imageToDisplay;
//etc, rest of code goes here
সেখান থেকে আপনার চিত্রটি সেট করতে নীচের মতো কিছু ব্যবহার করে আপনার ভাল হওয়া উচিত।
[YOURCONTROLLER.imageToDisplay setImage:[UIImage imageNamed:value]];
সুইফটে উদাহরণ :
import UIKit
class ViewController: UIViewController {
@IBOutlet var myUIImageView: UIImageView!
override func viewDidLoad() {
super.viewDidLoad()
}
@IBAction func myAction(sender: UIButton) {
let newImg: UIImage? = UIImage(named: "profile-picture-name")
self.myUIImageView.image = newImg
}
@IBAction func myAction2(sender: UIButton) {
self.myUIImageView.image = nil
self.myUIImageView.image = UIImage(data: NSData(contentsOfURL: NSURL(string: "http://url/image.png")!)!)
}
}
জর্ডানের পরামর্শ অনুসরণ করে (যা আসলে কাজ করা উচিত), ইউআইআইমেজভিউটি দৃশ্যমান হওয়ার জন্য সেট করার চেষ্টা করুন:
[imageView setHidden: NO];
এবং এছাড়াও - এটি প্রধান ইউআইভিউয়ের সাথে সংযুক্ত করতে ভুলবেন না:
[mainView addSubview: imageView];
এবং সামনে আনতে:
[mainView bringSubviewToFront: imageView];
আশা করি এই সমস্ত পদক্ষেপের সমন্বয় আপনাকে রহস্য সমাধান করতে সহায়তা করবে।
আমার সমস্যাটি হ'ল আমি অন্য থ্রেডে চিত্রটি পরিবর্তন করার চেষ্টা করেছি। আমি এটি পছন্দ করেছি:
- (void)changeImage {
backgroundImage.image = [UIImage imageNamed:@"img.png"];
}
সাথে কল করুন:
[self performSelectorOnMainThread : @selector(changeImage) withObject:nil waitUntilDone:NO];
dispatch_async(dispatch_get_main_queue(), ^{backgroundImage.image = [UIImage imageNamed:@"img.png"];})
আপনি যদি UIImageView
প্রোগ্রামটিমেমেডে ইমেজ সেট করতে চান তবে মূল ভিউতে সাবভিউUIImageView
হিসাবে যুক্ত করতে ভুলবেন না ।
এবং ইমেজভিউ ফ্রেম সেট করতে ভুলে যান না ।
এখানে কোড
UIImageView *myImage = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 320, 460)];
myImage.image = [UIImage imageNamed:@"myImage.png"];
[self.view addSubview:myImage];
sizeToFit()
আপনি যদি চিত্রটি পরিবর্তন করেন তবে কল করতে ভুলবেন না তবে আপনি যদি ইউআইস্ক্রোলভিউ কনটেন্টসাইজ এবং / অথবা গণনা জুম স্কেল সেট করতে UIImageView এর আকার ব্যবহার করেন
let image = UIImage(named: "testImage")
imageView.image = image
imageView.sizeToFit()
scrollView.contentSize = imageView.bounds.size
myUIImageview.image = UIImage (named:"myImage.png")
UIColor * background = [[UIColor alloc] initWithPatternImage:
[UIImage imageNamed:@"anImage.png"]];
self.view.backgroundColor = background;
[background release];
এই প্রশ্নের ইতিমধ্যে অনেক উত্তর ছিল। দুর্ভাগ্যক্রমে কেউই আমার পক্ষে কাজ করেনি। সুতরাং সম্পূর্ণতার জন্য আমি যা যুক্ত করেছিলাম তা যুক্ত করে:
আমার একই নামের একাধিক চিত্র ছিল - তাই আমি সেগুলি সাব ফোল্ডারে অর্ডার করেছি। এবং আমি যে চিত্র ফাইলটি দেখাতে চেয়েছিলাম তার পুরো পথ ছিল had একটি পূর্ণ পথ সহ imageNamed:
(উপরে সমস্ত সমাধান হিসাবে ব্যবহৃত) কাজ করে নি এবং এটি ভুল পদ্ধতি ছিল।
পরিবর্তে আমি এখন এর imageWithContentsOfFile:
মতো ব্যবহার করি :
self.myUIImage.image = [UIImage imageWithContentsOfFile:_currentWord.imageFileName];
জানেন না, কেউ যদি এতদূর পড়ে থাকেন?
যদি তাই হয় এবং এটি আপনাকে সহায়তা করে: দয়া করে ভোট দিন। ;-)
আপনার চিত্রটিতে চিত্র সেট করতে ভিউ কোডের নীচে ব্যবহার করুন,
self.imgObj.image=[UIImage imageNamed:@"yourImage.png"];