Xcode6
Empty Application
একটি নতুন প্রকল্প তৈরি করার সময় টেম্পলেটটি সরিয়ে ফেলেছে । Xcode6
পূর্ববর্তী সংস্করণগুলির মতো আমরা কীভাবে এবং উপরে স্টোরবোর্ড ছাড়াই (খালি অ্যাপ্লিকেশন) তৈরি করতে পারি ?
Xcode6
Empty Application
একটি নতুন প্রকল্প তৈরি করার সময় টেম্পলেটটি সরিয়ে ফেলেছে । Xcode6
পূর্ববর্তী সংস্করণগুলির মতো আমরা কীভাবে এবং উপরে স্টোরবোর্ড ছাড়াই (খালি অ্যাপ্লিকেশন) তৈরি করতে পারি ?
উত্তর:
পূর্বের XCode6
মত সরাসরি খালি অ্যাপ্লিকেশন তৈরির জন্য এবং এর উপরের সংস্করণগুলিতে কোনও বিকল্প নেই XCode5
। তবে এখনও আমরা Storyboard
এই পদক্ষেপগুলি অনুসরণ না করেই একটি অ্যাপ্লিকেশন তৈরি করতে পারি :
Single View Application
।Main.storyboard
এবং LaunchScreen.xib
(তাদের নির্বাচন করুন, ডান ক্লিক করুন, এবং হয় প্রকল্প থেকে তাদের অপসারণ বা সম্পূর্ণ মুছুন) চয়ন করুন।Info.plist
ফাইলগুলিতে করুন।3 এবং উপরে সুইফট:
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool
{
self.window = UIWindow(frame: UIScreen.main.bounds)
self.window?.backgroundColor = UIColor.white
self.window?.makeKeyAndVisible()
return true
}
সুইফট 2.x:
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool
{
self.window = UIWindow(frame: UIScreen.mainScreen().bounds)
self.window?.backgroundColor = UIColor.whiteColor()
self.window?.makeKeyAndVisible()
return true
}
উদ্দেশ্য গ:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
self.window.rootViewController = [[ViewController alloc] init];
self.window.backgroundColor = [UIColor whiteColor];
[self.window makeKeyAndVisible];
return YES;
}
LaunchScreen.xib
এবং অনুরূপ Info.plist
এন্ট্রি রাখতে পছন্দ করি । এটি ছাড়াই অ্যাপটি বড় পর্দার আকার পুরোপুরি গ্রহণ করবে না, এটি কুৎসিত।
একটি সরল পদ্ধতির কপি করতে হবে XCode 5
এর Empty Application
টেমপ্লেটে XCode
এর টেমপ্লেট নির্দেশিকা।
আপনি ডাউনলোড করতে পারেন XCode 5
এর Empty Application
থেকে টেমপ্লেট এখানে এটা আনজিপ, এবং তারপর কপি /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Templates/Project Templates/iOS/Application
ডিরেক্টরি।
পিএস এই পদ্ধতির পাশাপাশি দ্রুত সঙ্গে কাজ করে!
সম্পাদনা
নীচে একটি মন্তব্যে @harrisg দ্বারা প্রস্তাবিত হিসাবে, আপনি উল্লিখিত টেম্পলেটটি ~/Library/Developer/Xcode/Templates/Project Templates/iOS/Application/
ফোল্ডারে রাখতে পারেন যাতে এটি Xcode আপডেট হয়ে গেলেও উপলব্ধ।
এবং যদি এই জাতীয় ডিরেক্টরি উপস্থিত না থাকে, তবে আপনাকে এই ডিরেক্টরি কাঠামোটি তৈরি করতে হতে পারে: Templates/Project Templates/iOS/Application/
ইন~/Library/Developer/Xcode/
এই সহজ পদ্ধতির ব্যবহার করে আমি একটি Empty Application
ইন তৈরি করতে সক্ষম হয়েছি XCode 6
। (স্ক্রিনশট নীচে সংযুক্ত)
আশাকরি এটা সাহায্য করবে!
আরও কয়েকটি পদক্ষেপ রয়েছে যা আপনার করা দরকার:
সুতরাং এখানে একটি সম্পূর্ণ টিউটোরিয়াল:
বিষয়বস্তু সহ ফাইলগুলিকে সমর্থন করার জন্য "[অ্যাপের নাম] -Prefix.pch" ফাইল যুক্ত করুন:
#import <Availability.h>
#ifndef __IPHONE_3_0
#warning "This project uses features only available in iOS SDK 3.0 and later."
#endif
#ifdef __OBJC__
#import <UIKit/UIKit.h>
#import <Foundation/Foundation.h>
#endif
প্রকল্পের সেটিংগুলিতে "$ SRCROOT / $ PROJECT_NAME / [pch ফাইলের নাম]" যুক্ত করুন -> সেটিংস তৈরি করুন -> অ্যাপল এলএলভিএম 6.0 - ভাষা -> "উপসর্গ শিরোনাম"
application:didFinishLaunchingWithOptions:
পদ্ধতি প্রয়োগ করুন :
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
//Override point for customization after application launch.
self.window.backgroundColor = [UIColor whiteColor];
[self.window makeKeyAndVisible];
return YES;
আখিলের উত্তর সম্পূর্ণ সঠিক। আমরা যারা সুইফ্ট ব্যবহার করি তাদের ক্ষেত্রে এটি এমন হবে:
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
self.window = UIWindow(frame: UIScreen.mainScreen().bounds)
self.window?.backgroundColor = UIColor.whiteColor()
self.window?.makeKeyAndVisible()
return true
}
এক্সকোড 9.3.1 এবং সুইফট 4
এরপরে পদক্ষেপগুলি AppDelegate.swift এ যান এবং ফাংশনে ফিনিশলঞ্চিং উইথঅপশনগুলি পরবর্তী লিখুন:
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
// Override point for customization after application launch.
window = UIWindow(frame: UIScreen.main.bounds)
window?.makeKeyAndVisible()
window?.rootViewController = UINavigationController(rootViewController: ViewController())
return true
}
এক্সকোড 11.2.1 এবং সুইফট 5
এরপরে পদক্ষেপগুলি সিনডেলিগেটে যান এবং ফাংশন দৃশ্যে পরবর্তীটি লিখুন:
func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
// Use this method to optionally configure and attach the UIWindow `window` to the provided UIWindowScene `scene`.
// If using a storyboard, the `window` property will automatically be initialized and attached to the scene.
// This delegate does not imply the connecting scene or session are new (see `application:configurationForConnectingSceneSession` instead).
guard let windowScene = (scene as? UIWindowScene) else { return }
window = UIWindow(frame: windowScene.coordinateSpace.bounds)
window?.windowScene = windowScene
window?.rootViewController = ViewController()
window?.makeKeyAndVisible()
}
আপনার আরও একটি পদক্ষেপ করতে হবে:
1) প্লাস্ট ফাইলের প্রধান স্টোরিবোর্ড ফাইলের নাম নামটি সরান
//AppDelegate.h
@property (strong, nonatomic) UIViewController *viewController;
@property (strong, nonatomic) UINavigationController *nav;
//AppDelegate.m
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {`enter code here`
// Override point for customization after application launch.
CGRect screenBounds = [[UIScreen mainScreen] bounds];
UIWindow *window = [[UIWindow alloc] initWithFrame:screenBounds];
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
self.viewController = [[UIViewController alloc] initWithNibName:@"ViewController" bundle:nil];
self.nav = [[UINavigationController alloc] initWithRootViewController:self.viewController];
[window setRootViewController: self.nav];
[window makeKeyAndVisible];
[self setWindow:window];
return YES;
}
আপডেট: সুইফট 5 এবং আইওএস 13:
SceneDelegate.swift
এবং এর func scene
থেকে পরিবর্তন করুন :func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
// Use this method to optionally configure and attach the UIWindow `window` to the provided UIWindowScene `scene`.
// If using a storyboard, the `window` property will automatically be initialized and attached to the scene.
// This delegate does not imply the connecting scene or session are new (see `application:configurationForConnectingSceneSession` instead).
guard let _ = (scene as? UIWindowScene) else { return }
}
প্রতি
func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
// Use this method to optionally configure and attach the UIWindow `window` to the provided UIWindowScene `scene`.
// If using a storyboard, the `window` property will automatically be initialized and attached to the scene.
// This delegate does not imply the connecting scene or session are new (see `application:configurationForConnectingSceneSession` instead).x
if let windowScene = scene as? UIWindowScene {
let window = UIWindow(windowScene: windowScene)
window.rootViewController = ViewController()
self.window = window
window.makeKeyAndVisible()
}
}
আমার কাছে মূল খালি অ্যাপ্লিকেশন টেম্পলেট রয়েছে যা Xcode 6 এর পূর্বে Xcode সংস্করণে ব্যবহৃত হয়েছিল I আমি এটি এখানে আপলোড করেছি ।
আপনি এটি ডাউনলোড করতে পারেন এবং এটিকে ম্যানুয়ালি Xcode টেম্পলেট ডিরেক্টরিতে পেস্ট করতে পারেন বা এক্সকোড, অ্যালকাট্রাজের প্যাকেজ ম্যানেজার ব্যবহার করে এটি ইনস্টল করতে পারেন । শুধু এক্সকোড খালি অ্যাপ্লিকেশন অনুসন্ধান করুন ।
মেইন.স্টরিবোর্ড ফাইলটি সরান
এটি কেবল মুছে ফেলা যায়।
প্রোজেক্টনাম-ইনফো.প্লেস্ট ফাইলটি আপডেট করুন
অপসারণ Main storyboard base file name
চাবিটি ।
একটি নিব ফাইল তৈরি করুন এবং প্রকল্পের ভিউ কন্ট্রোলারের সাথে লিঙ্ক করুন
1. একটি নিব ফাইল তৈরি করুন (ফাইল -> নতুন -> ফাইল -> দেখুন)
2. আপডেট করুন File's Owner's
প্রকল্পের ভিউ কন্ট্রোলার যাকে বলা হয়
3. File's Owner's
view
আউটলেট লিঙ্কview
নিব ফাইলের মধ্যে
অ্যাপের প্রতিনিধি আপডেট করুন
1. প্রকল্পের ভিউ কন্ট্রোলারের শিরোনাম ফাইলটি আমদানি করুন
2. অ্যাপ্লিকেশন :didFinishLaunchingWithOptions:
পদ্ধতি আপডেট করুন :
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
MyViewController *viewController = [[MyViewController alloc] initWithNibName:@"MyViewController" bundle:nil];
self.window.rootViewController = viewController;
[self.window makeKeyAndVisible];
return YES;
}
জন্য Xcode 8
এবং Swift 3
।
কেবল .storyboard
ফাইলটি মুছুন , এটি স্বয়ংক্রিয়ভাবে আপনার থেকে .plist
এবং AppDelegate.swift
নিম্নলিখিত কোডটি যুক্ত করে সম্পর্কিত রেফারেন্সটি মুছে ফেলবে ।
let initialViewController = UIViewController() initialViewController.view.backgroundColor = .white window = UIWindow(frame: UIScreen.main.bounds) window?.rootViewController = initialViewController window?.makeKeyAndVisible()
আপনি আপনার নিজস্ব কাস্টম ভিউকন্ট্রোলার লিখতে পারেন এবং এটিতে AppDelegate.swift
আপনার হিসাবে ব্যবহার করতে পারেন self.window?.rootViewController
, কেবলমাত্র ইউআইভিউউকন্ট্রোলারটিকে উপরের কোডটিতে আপনার নিজস্ব ভিউকন্ট্রোলারের সাথে প্রতিস্থাপন করতে পারেন।
আমি XCode6 বিটা ব্যবহার করছি এবং আমি XCode5.xx থেকে XCode6 বিটাতে খালি টেম্পলেট যুক্ত করে এই সমস্যার আর একটি সমাধান অনুসন্ধান করেছি।
অ্যাপ্লিকেশনগুলিতে XCode5.xx এ ডান ক্লিকের জন্য 'প্যাকেজ সামগ্রী দেখান' ক্লিক করুন এবং প্রদত্ত পথ থেকে 'খালি অ্যাপ্লিকেশন.এক্সটেমপ্লেট' অনুলিপি করুন
সামগ্রী / বিকাশকারী / প্ল্যাটফর্ম / আইফোনএস.প্ল্যাটফর্ম / বিকাশকারী / গ্রন্থাগার / এক্সকোড / টেমপ্লেট / প্রকল্পের টেম্পলেট / অ্যাপ্লিকেশন
এখন উইন্ডোটি ছেড়ে দিন এবং এক্সকোড 6 এর জন্য প্রদত্ত পথটি খুলুন
সামগ্রী / বিকাশকারী / প্ল্যাটফর্ম / আইফোনএস.প্ল্যাটফর্ম / বিকাশকারী / গ্রন্থাগার / এক্সকোড / টেম্পলেট / প্রকল্প টেমপ্লেট / আইওএস / অ্যাপ্লিকেশন /
অ্যাপ্লিকেশন ফোল্ডারের ভিতরে 'খালি অ্যাপ্লিকেশন। Xctemplate' আটকান। এখন এক্সকোড 6 পুনরায় চালু করুন এবং নতুন প্রকল্প তৈরি করুন। আপনি 'খালি অ্যাপ্লিকেশন' বিকল্প পাবেন।
এখন যখন আমি নতুন খালি প্রকল্প তৈরি করছি, তখন একটি .pch ফাইল স্বয়ংক্রিয়ভাবে প্রকল্পে যুক্ত হবে (যা আমাদের এক্সকোড 6 এ ম্যানুয়ালি যোগ করতে হবে)
আশা করি এটি কার্যকর হবে
আপনি এক্সকোডের জন্য আপনার নিজস্ব প্রকল্পের টেম্পলেট তৈরি করতে পারেন। আপনার অনুরোধের জন্য, আপনি এই সাইটে টেমপ্লেট ব্যবহার করতে পারেন:
অন্যরা ইতিমধ্যে কীভাবে স্টোরিবোর্ড থেকে মুক্তি পাবেন তা ব্যাখ্যা করেছেন, তাই আমি এখানে সেটিকে এড়িয়ে যাব। এইভাবে আমি কম কোডিয়াল চেইন (সুইফট ৩.১ এ লিখিত) সহ আমার কোডটিতে এটি করতে পছন্দ করি:
func application(_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
let window = UIWindow(frame: UIScreen.main.bounds)
window.backgroundColor = .white
window.rootViewController = MyRootViewController()
window.makeKeyAndVisible()
self.window = window
return true
}
এক্সকোড 11 এবং আইওএস 13-এ আপডেট করুন you পুরানো দিনগুলিতে ফিরে যেতে আমাদের ইউআইএসসিইনডেলিগেটে অভ্যস্ত হওয়ার আগে। নিম্নলিখিত পদক্ষেপগুলি সাহায্য করতে পারে:
প্লাস্টে অ্যাপ্লিকেশন সিন ম্যানিফেস্ট মুছুন।
অ্যাপ্লিকেশন সিন ম্যানিফেস্ট। ও অ্যাপ্লিকেশন সিন ম্যানিফেস্ট.মিলিট করুন
#pragma চিহ্নের অধীনে কোডটি মুছুন - অ্যাপ্লিজেট.এম-এ ইউআইএসসিএনসেশন জীবনচক্র
@ প্রপার্টি যুক্ত করুন (শক্তিশালী, ননোটমিক) ইউআই উইন্ডো * উইন্ডো; APPdelegate.h এ