একটি কন্টাক্ট ম্যানেজমেন্ট সিস্টেম তৈরি করতে নিম্নলিখিত ধাপগুলো অনুসরণ করতে পারেন। এখানে আমরা সুইফট ও UIKit ব্যবহার করব। অ্যাপটি এমন হবে যেখানে আপনি কন্টাক্ট যুক্ত, দেখা এবং মুছে ফেলতে পারবেন।
ধাপ ১: প্রোজেক্ট সেটআপ
- Xcode খুলুন এবং একটি নতুন Single View App প্রজেক্ট তৈরি করুন।
- প্রজেক্টের নাম দিন "ContactManager" এবং ভাষা হিসেবে Swift নির্বাচন করুন।
ধাপ ২: মডেল তৈরি
একটি Contact মডেল তৈরি করুন যা প্রতিটি কন্টাক্টের জন্য ব্যবহৃত হবে।
struct Contact {
var name: String
var phoneNumber: String
}
ধাপ ৩: UI ডিজাইন
Main.storyboard এ যান এবং কন্টাক্ট ম্যানেজমেন্ট সিস্টেমের জন্য একটি সরল UI ডিজাইন করুন।
- একটি UITableView যোগ করুন, যা কন্টাক্টগুলো দেখাবে।
- একটি UIButton যোগ করুন (Add Contact) নতুন কন্টাক্ট যুক্ত করার জন্য।
UITableView এবং UIButton-কে ViewController এর সাথে IBOutlet হিসেবে সংযুক্ত করুন।
ধাপ ৪: UITableView সেটআপ
ViewController.swift এ UITableViewDelegate এবং UITableViewDataSource প্রোটোকলগুলো ইমপ্লিমেন্ট করুন।
class ViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {
@IBOutlet weak var tableView: UITableView!
var contacts: [Contact] = []
override func viewDidLoad() {
super.viewDidLoad()
tableView.delegate = self
tableView.dataSource = self
}
// DataSource ফাংশন
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return contacts.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath)
let contact = contacts[indexPath.row]
cell.textLabel?.text = contact.name
cell.detailTextLabel?.text = contact.phoneNumber
return cell
}
}
Storyboard এ UITableView এর জন্য Prototype Cell তৈরি করুন এবং সেটির Identifier দিন “cell”।
ধাপ ৫: কন্টাক্ট যুক্ত করার ফাংশন তৈরি
ViewController এ একটি ফাংশন তৈরি করুন যা ব্যবহারকারীর থেকে ইনপুট নিয়ে নতুন কন্টাক্ট অ্যাড করবে।
@IBAction func addContact(_ sender: UIButton) {
let alertController = UIAlertController(title: "New Contact", message: "Add contact details", preferredStyle: .alert)
alertController.addTextField { textField in
textField.placeholder = "Name"
}
alertController.addTextField { textField in
textField.placeholder = "Phone Number"
textField.keyboardType = .phonePad
}
let addAction = UIAlertAction(title: "Add", style: .default) { [weak self] _ in
if let name = alertController.textFields?[0].text, !name.isEmpty,
let phoneNumber = alertController.textFields?[1].text, !phoneNumber.isEmpty {
let newContact = Contact(name: name, phoneNumber: phoneNumber)
self?.contacts.append(newContact)
self?.tableView.reloadData()
}
}
let cancelAction = UIAlertAction(title: "Cancel", style: .cancel, handler: nil)
alertController.addAction(addAction)
alertController.addAction(cancelAction)
present(alertController, animated: true)
}
UIButton (Add Contact) এর সাথে এই addContact ফাংশনটি সংযুক্ত করুন।
ধাপ ৬: কন্টাক্ট মুছে ফেলার ফাংশন
কন্টাক্ট আইটেমগুলো মুছে ফেলার জন্য UITableView এর editingStyle ফাংশন ইমপ্লিমেন্ট করুন:
func tableView(_ tableView: UITableView, commit editingStyle: UITableViewCell.EditingStyle, forRowAt indexPath: IndexPath) {
if editingStyle == .delete {
contacts.remove(at: indexPath.row)
tableView.deleteRows(at: [indexPath], with: .fade)
}
}
ধাপ ৭: টেস্ট এবং ফাইনাল টাচ
- প্রজেক্টটি রান করে দেখুন নতুন কন্টাক্ট যুক্ত, দেখা এবং মুছে ফেলার ফিচারগুলো সঠিকভাবে কাজ করছে কিনা।
- যদি কোনো সমস্যা থাকে, তা ডিবাগ করুন।
এই স্টেপগুলো অনুসরণ করলে একটি সাধারণ কন্টাক্ট ম্যানেজমেন্ট সিস্টেম তৈরি করতে পারবেন। চাইলে আরও ফিচার যোগ করতে পারেন, যেমন কন্টাক্ট এডিট করার অপশন বা সেগুলো সংরক্ষণ করার জন্য লোকাল ডেটাবেজ (যেমন CoreData বা UserDefaults) ব্যবহার।