iOS ইনপুট আউটপুট অ্যাপ

সিম্পল একটা অ্যাপ বানাবো আজ। একটা টেক্সট ফিল্ড থাকবে। একটা বাটন থাকবে। আর থাকবে একটা লেভেল। টেক্সট ফিল্ডে আপনার নাম লিখতে বলবে। এবং নাম লিখে বাটনে ক্লিক করলে লেভেলে আপনার নাম দেখাবে। পুরো অ্যাপটি তৈরি করার জন্য আমাদের মাত্র এক লাইন কোড লিখতে হবে। তাহলে শুরু করা যাক।

একটি আইওএস অ্যাপ কিভাবে তৈরি করতে হয় এবং ব্যাসিক কিছু নিয়ে নিচের লেখাতে আলোচনা করা হয়েছেঃ

প্রথমে এক্সকোড ওপেন করে একটা প্রজেক্ট খুলি। প্রজেক্ট ন্যাভিগেশন থেকে storyboard সিলেক্ট করি।

এবার অবজেক্ট লাইব্রেরী থেকে একটা Text Field ড্র্যাগ করে স্টোরিবোর্ড এ পেস্ট করি। অবজেক্ট লাইব্রেরী নিচের দিকে ডান কোনায়।

 

Screenshot 2015-01-04 00.16.49

 

Inspect থেকে টেক্সট ফিল্ডে একটা Placeholder দিব। Placeholder হচ্ছে টেক্সট ফিল্ডের জন্য একটা মেসেজ, ঐ টেক্সট ফিল্ডে কি লিখতে হবে, তার একটা সাজেশন। যেমন আমরা আমাদের অ্যাপে এ টেক্সট ফিল্ড দিয়ে একটা নাম ইনপুট নিব। তাই Placeholder এ লিখতে পারিঃ Type your name

Text Field এর মত একটা বাটন এবং একটা Label স্টোরি বোর্ড এ ড্র্যাগ করি।

Screenshot 2015-01-04 00.17.16

 

এবার আমাদের কোড লিখতে হবে। কোড লেখার আগে আমাদের ভিউ এর সাথে কন্ট্রোলার যুক্ত করতে হবে। স্টোরি বোর্ড এর এক একটা অবজেক্ট এক একটা ভিউ। iOS অ্যাপ কাজ করে MVC পদ্ধতিতে। MVC কি, তা জানতে নিচের লেখাটা দেখা যেতে পারেঃ

 

Storyboard হচ্ছে আমাদের ভিউ ফাইল। আর আমাদের ডিফল্ট কন্ট্রোলার হচ্ছে ViewController.swift ফাইল। কন্ট্রোলারের সাথে ভিউ যুক্ত করার জন্য আমরা Storyboard এবং ViewController.swift ফাইল পাশা পাশি রাখব। তার জন্য উপরের দিকের ডান কোনায় Show Assistant Editor বাটন এ ক্লিক করব। নিচের ছবিটি লক্ষ করিঃ

Screenshot 2015-01-04 00.17.58

 

বাটনটিতে ক্লিক করলে আমাদের অ্যাপটি টেক্সটফিল্ড থেকে টেক্সট পড়ে তা লেভেলে দেখাবে। আর এটা তো একটা Action , তাই না?

Buton টি সিলেক্ট করে Ctr কী প্রেস করে ধরে ViewController.swift ফাইল এর ভেতর নিয়ে আসি। এবং class ViewController: UIViewController { এর পর ছেড়ে দি। তাহলে একটি পপ আপ ওপেন হবেঃ

Screenshot 2015-01-04 00.20.30

 

উপরে ছবিটা লক্ষ করি। পপ আপের Connection এ ডিফল্ট ভাবে Outlet হিসেবে সিলেক্ট করা থাকবে। Outlet পরিবর্তন করলে Action সিলেক্ট করি। এবার Name ফিল্ডে একটা নাম দি। এটা হচ্ছে মেথডের নাম। তাহলে ViewController.swift এ একটা মেথড যুক্ত হবে। এই মেথডের ভেতরে এক লাইন কোড লিখলেই আমাদের অ্যাপ ঠিক মত কাজ করতে পারবে। নিচের মত মেথডটি বা ফাংশনটি যুক্ত হবে।

 



[email protected] func getName(sender: AnyObject) {

}

আমরা শুধু বাটনটি যুক্ত করেছি ViewController.swift ফাইলে। এখনো Text Field এবং Label টি যুক্ত করতে হবে। Text Field এবং Label  হচ্ছে এক একটা আউটলেট।

প্রথমে টেক্সট ফিল্ড সিলেক্ট করে Ctr + Click করে ViewController.swift ফাইল এ টেনে এনে ছেড়ে দি। লক্ষরাখি যে আমাদের getName / Button এর মেথড এর উপরে ড্র্যাগ করি। মানে @IBAction func getName(sender: AnyObject) এর উপরে এবং class ViewController: UIViewController { এর পরে ছেড়ে দি।  তাহলে একটা পপআপ ওপেন হবে। Connection এ ডিফল্ট ভাবে Outlet হিসেবে সিলেক্ট করা থাকবে। আর টেক্সটফিল্ড একটা আউটলেট, তাই আর এটা পরিবর্তন করতে হবে না। Name থেকে এই আউটলেট এর একটি নাম দিয়ে দি। যেমন আমি দিলাম textField

একই ভাবে Label ও ViewController.swift ফাইলে যুক্ত করি। যেমন আমি নাম দিলাম myField.

 

এবার মেথডের ভেতর লিখিঃ


myLabel.text = "You typed: " + textField.text!

textField.text দিয়ে টেক্সটফিল্ডে যে লেখাটি রয়েছে, তা নিয়েছি। স্ট্রিং কনক্যাটিনেশন বা স্ট্রিং জোড়া দেওয়া সম্পর্কে তো আমরা জানি। না জানলে সুইফট ব্যাসিক থেকে জেনে নিতে পারি। টেক্সট ফিল্ডের টেক্সট এর সাথে You’r name is জোড়া দিয়েছি। এবং শেষে তা myLabel এ এসাইন বা সেট করে দিয়েছি। সিম্পল।

 

অ্যাপটি রান করি, এবং টেক্সট ফিল্ডে কিছু লিখে বাটনে প্রেস করি। তাহলে দেখব আমাদের অ্যাপ সুন্দর মত কাজ করে। আমরা যেমন অ্যাপ তৈরি করতে চেয়েছি, ঠিক তেমন একটা অ্যাপ তৈরি করে ফেলেছি।

Screenshot 2015-01-04 00.25.12

 

 

 


One thought on “iOS ইনপুট আউটপুট অ্যাপ

  1. ভাই,আমি হবিগঞ্জ পলিটেকনিকে(ডিপ্লোমা) সিভিলে ৬ষ্ঠ পর্বে আছি।২০১১ তেই কিছু একটা করার জন্য আল-হেরা মাল্টিমিডিয়া থেকে ১০টি পেকেজ একত্রে কিনি।কয়েকদিন পরেই জোশ শেষ:(( (-_-)
    মনে তো চায় ওয়েব ডিজ,,ডেপ,,।এখন তো আপনার পোস্ট দেখে মনে হচ্ছে অ্যাপ ডেভেলপার।নাকি পড়ার সাথে মিল রেখে অটোক্যাড,ওহ।কারণ বাড়িতে থেকে কিছু করতে চাই,গ্রামের মানুষদের সপ্ন দেখাতে চাই।কারো গোলামি করে নয়,কিন্তু আল্লাহ তায়ালা ছাড়া।এখন চাই পরামর্শ,,জাকির ভাই বা কেউ কিছুতো বলুন।
    আল্লাহতায়ালা আমাদের উত্তম প্রতিদান দিন,আমিন।

Leave a Reply

Your email address will not be published. Required fields are marked *