এই কোডল্যাবটি অ্যান্ড্রয়েড কোটলিন ফান্ডামেন্টাল কোর্সের অংশ। আপনি যদি ক্রমানুসারে কোডল্যাবগুলির মাধ্যমে কাজ করেন তবে আপনি এই কোর্সের সর্বাধিক মূল্য পাবেন৷ সমস্ত কোর্স কোডল্যাব অ্যান্ড্রয়েড কোটলিন ফান্ডামেন্টাল কোডল্যাব ল্যান্ডিং পৃষ্ঠায় তালিকাভুক্ত করা হয়েছে।
আপনি ইতিমধ্যে কি জানা উচিত
- কোটলিনে একটি মৌলিক অ্যান্ড্রয়েড অ্যাপ তৈরি করা হচ্ছে।
- একটি এমুলেটর বা একটি ডিভাইসে একটি Android অ্যাপ চালানো।
- অ্যান্ড্রয়েড স্টুডিওর লেআউট এডিটর ব্যবহার করে একটি লিনিয়ার লেআউট তৈরি করা।
- একটি সাধারণ অ্যাপ তৈরি করা যা
LinearLayout
,TextView
,ScrollView
, এবং একটি ক্লিক হ্যান্ডলার সহ একটি বোতাম ব্যবহার করে৷
আপনি কি শিখবেন
- কিভাবে একটি
EditText
ভিউ ব্যবহার করে ব্যবহারকারীর ইনপুট পেতে হয়। -
EditText
ভিউ থেকে টেক্সট ব্যবহার করে কিভাবে একটিTextView
ভিউতে টেক্সট সেট করবেন। -
View
এবংViewGroup
সাথে কীভাবে কাজ করবেন। - কিভাবে একটি
View
এর দৃশ্যমানতা পরিবর্তন করতে হয়।
আপনি কি করবেন
- AboutMe অ্যাপে ইন্টারঅ্যাক্টিভিটি যোগ করুন, যা আগের কোডল্যাব থেকে এসেছে।
- একটি
EditText
যোগ করুন যাতে ব্যবহারকারী পাঠ্য লিখতে পারে। - একটি
Button
যোগ করুন এবং এটির ক্লিক হ্যান্ডলার প্রয়োগ করুন।
এই কোডল্যাবে, আপনি ব্যবহারকারীর মিথস্ক্রিয়া যোগ করতে AboutMe অ্যাপটি প্রসারিত করুন। ডাকনাম প্রদর্শন করতে আপনি একটি ডাকনাম ক্ষেত্র, একটি সম্পন্ন বোতাম এবং একটি পাঠ্য দৃশ্য যোগ করুন। একবার ব্যবহারকারী একটি ডাকনাম প্রবেশ করান এবং সম্পন্ন বোতামে আলতো চাপ দিলে, প্রবেশ করা ডাকনামটি দেখানোর জন্য পাঠ্য ভিউ আপডেট হয়। ব্যবহারকারী টেক্সট ভিউ ট্যাপ করে আবার ডাকনাম আপডেট করতে পারেন।
এই টাস্কে, আপনি ব্যবহারকারীকে একটি ডাকনাম লিখতে অনুমতি দেওয়ার জন্য একটি EditText
ইনপুট ক্ষেত্র যোগ করুন।
ধাপ 1: শুরু করুন
- যদি আপনার কাছে পূর্ববর্তী কোডল্যাব থেকে ইতিমধ্যেই AboutMe অ্যাপ না থাকে, তাহলে স্টার্টার কোড, AboutMeInteractive-Starter ডাউনলোড করুন। এটি একই কোড আপনি পূর্ববর্তী কোডল্যাবে শেষ করেছেন।
- অ্যান্ড্রয়েড স্টুডিওতে AboutMeInteractive-স্টার্টার প্রকল্পটি খুলুন।
- অ্যাপটি চালান। আপনি একটি স্ক্রোল ভিউতে একটি নামের পাঠ্য দৃশ্য, একটি তারকা চিত্র এবং পাঠ্যের একটি দীর্ঘ অংশ দেখতে পাবেন।
লক্ষ্য করুন যে ব্যবহারকারী কোন টেক্সট পরিবর্তন করতে পারবেন না।
অ্যাপগুলি আরও আকর্ষণীয় হয় যদি ব্যবহারকারী অ্যাপের সাথে ইন্টারঅ্যাক্ট করতে পারে, উদাহরণস্বরূপ যদি ব্যবহারকারী পাঠ্য লিখতে পারে। টেক্সট ইনপুট গ্রহণ করার জন্য, অ্যান্ড্রয়েড একটি ইউজার ইন্টারফেস (UI) উইজেট প্রদান করে যাকে বলা হয় এডিট টেক্সট । আপনি TextView
ব্যবহার করে একটি সম্পাদনা টেক্সট সংজ্ঞায়িত করেন, EditText
এর একটি সাবক্লাস। একটি সম্পাদনা টেক্সট ব্যবহারকারীকে টেক্সট ইনপুট লিখতে এবং পরিবর্তন করতে দেয়, যেমনটি নীচের স্ক্রিনশটে দেখানো হয়েছে।
ধাপ 2: একটি EditText যোগ করুন
- অ্যান্ড্রয়েড স্টুডিওতে, ডিজাইন ট্যাবে
activity_main.xml
লেআউট ফাইলটি খুলুন। - প্যালেট প্যানে, টেক্সট ক্লিক করুন।
Ab TextView , যা একটিTextView
, প্যালেট প্যানে পাঠ্য উপাদানগুলির তালিকার শীর্ষে দেখায়। Ab TextView এর নিচে একাধিকEditText
ভিউ রয়েছে।
প্যালেট প্যানে, লক্ষ্য করুন কিভাবেTextView
-এর আইকন কোন আন্ডারস্কোরিং ছাড়াই Ab অক্ষর দেখায়।EditText
আইকন, তবে, Ab আন্ডারস্কোর দেখায়। আন্ডারস্কোরিং নির্দেশ করে যে ভিউ সম্পাদনাযোগ্য।
EditText
ভিউগুলির প্রতিটির জন্য, Android বিভিন্ন বৈশিষ্ট্য সেট করে এবং সিস্টেমটি উপযুক্ত সফট ইনপুট পদ্ধতি (যেমন একটি অন-স্ক্রীন কীবোর্ড) প্রদর্শন করে। - কম্পোনেন্ট ট্রিতে একটি প্লেইনটেক্সট সম্পাদনা টেক্সট টেনে আনুন এবং নাম_পাঠ্যের নীচে এবং
name_text
উপরেstar_image
। -
EditText
ভিউতে নিম্নলিখিত বৈশিষ্ট্যগুলি সেট করতে বৈশিষ্ট্য ফলকটি ব্যবহার করুন।
বৈশিষ্ট্য | মান |
| |
| |
| |
- আপনার অ্যাপ চালান। তারকা চিত্রের উপরে, আপনি ডিফল্ট পাঠ্য "নাম" সহ একটি সম্পাদনা পাঠ্য দেখতে পাচ্ছেন।
এই টাস্কে, আপনি একটি ইঙ্গিত যোগ করে, টেক্সট অ্যালাইনমেন্ট পরিবর্তন করে, স্টাইলটিকে NameStyle
এ পরিবর্তন করে এবং ইনপুট টাইপ সেট করে আপনার EditText
ভিউ স্টাইল করুন।
ধাপ 1: ইঙ্গিত টেক্সট যোগ করুন
-
string.xml
ফাইলে ইঙ্গিতের জন্য একটি নতুন স্ট্রিং রিসোর্স যোগ করুন।
<string name="what_is_your_nickname">What is your Nickname?</string>
-
EditText
ভিউতে নিম্নলিখিত বৈশিষ্ট্যগুলি সেট করতে বৈশিষ্ট্য ফলকটি ব্যবহার করুন:
বৈশিষ্ট্য | মান |
| |
| (কেন্দ্র) |
| |
- অ্যাট্রিবিউট প্যানে,
text
অ্যাট্রিবিউট থেকেName
মান সরিয়ে দিন।text
অ্যাট্রিবিউটের মান খালি থাকা দরকার যাতে ইঙ্গিতটি প্রদর্শিত হয়।
ধাপ 2: inputType অ্যাট্রিবিউট সেট করুন
ইনপুট টাইপ অ্যাট্রিবিউট নির্দিষ্ট করে যে ধরনের ইনপুট EditText
inputType
প্রবেশ করতে পারেন। অ্যান্ড্রয়েড সিস্টেম ইনপুট প্রকার সেটের উপর নির্ভর করে উপযুক্ত ইনপুট ক্ষেত্র এবং অন-স্ক্রীন কীবোর্ড প্রদর্শন করে।
সমস্ত সম্ভাব্য ইনপুট প্রকার দেখতে, বৈশিষ্ট্য ফলকে, ইনপুট inputType
ক্ষেত্রে ক্লিক করুন, বা ক্ষেত্রের পাশে তিনটি বিন্দুতে ক্লিক করুন ... একটি তালিকা খোলে যা বর্তমানে সক্রিয় ইনপুট প্রকার চেক করা সহ আপনি ব্যবহার করতে পারেন এমন সব ধরনের ইনপুট দেখায়৷ আপনি একাধিক ইনপুট প্রকার নির্বাচন করতে পারেন।
উদাহরণস্বরূপ, পাসওয়ার্ডের জন্য, textPassword
মান ব্যবহার করুন। পাঠ্য ক্ষেত্র ব্যবহারকারীর ইনপুট লুকিয়ে রাখে।
ফোন নম্বরের জন্য, phone
মান ব্যবহার করুন। একটি সংখ্যা কীপ্যাড প্রদর্শিত হয়, এবং ব্যবহারকারী শুধুমাত্র সংখ্যা লিখতে পারেন।
ডাকনাম ক্ষেত্রের জন্য ইনপুট প্রকার সেট করুন:
-
nickname_edit
সম্পাদনা পাঠের জন্যtextPersonName
এinputType
বৈশিষ্ট্য সেট করুন । - কম্পোনেন্ট ট্রি প্যানে, একটি
autoFillHints
সতর্কতা লক্ষ্য করুন। এই সতর্কতা এই অ্যাপে প্রযোজ্য নয় এবং এই কোডল্যাবের সুযোগের বাইরে, তাই আপনি এটি উপেক্ষা করতে পারেন। (আপনি যদি অটোফিল সম্পর্কে আরও জানতে চান, অটোফিলের জন্য আপনার অ্যাপটি অপ্টিমাইজ করুন দেখুন।) - অ্যাট্রিবিউট প্যানে,
EditText
ভিউ-এর নিম্নলিখিত অ্যাট্রিবিউটের মান যাচাই করুন:
বৈশিষ্ট্য | মান |
| |
| |
| |
| |
| |
| |
| (খালি) |
একটি Button
একটি UI উপাদান যা ব্যবহারকারী একটি ক্রিয়া সম্পাদন করতে আলতো চাপতে পারে৷ একটি বোতামে পাঠ্য, একটি আইকন, বা পাঠ্য এবং একটি আইকন উভয়ই থাকতে পারে।
এই টাস্কে, আপনি একটি DONE বোতাম যোগ করুন, যা ব্যবহারকারী একটি ডাকনাম প্রবেশ করার পরে ট্যাপ করে। বোতামটি সম্পাদনা TextView
EditText
দিয়ে অদলবদল করে যা ডাকনাম প্রদর্শন করে। ডাকনাম আপডেট করতে, ব্যবহারকারী TextView
ভিউ ট্যাপ করতে পারেন।
ধাপ 1: একটি সম্পন্ন বোতাম যোগ করুন
- প্যালেট ফলক থেকে কম্পোনেন্ট ট্রিতে একটি বোতাম টেনে আনুন।
nickname_edit
সম্পাদনা পাঠ্যের নীচে বোতামটি রাখুন। -
done
নামে একটি নতুন স্ট্রিং সংস্থান তৈরি করুন। স্ট্রিংটিকেDone
এর একটি মান দিন,
<string name="done">Done</string>
- নতুন যোগ করা
Button
ভিউতে নিম্নলিখিত বৈশিষ্ট্যগুলি সেট করতে বৈশিষ্ট্য ফলকটি ব্যবহার করুন:
বৈশিষ্ট্য | মূল্যবোধ |
| |
| |
| |
| |
layout_gravity
অ্যাট্রিবিউটটি এর মূল লেআউট, LinearLayout
এ ভিউকে কেন্দ্র করে।
- স্টাইলটিকে
Widget.AppCompat.Button.Colored
এ পরিবর্তন করুন, যা Android প্রদান করে এমন একটি পূর্বনির্ধারিত শৈলী। আপনি ড্রপ-ডাউন বা সম্পদ উইন্ডো থেকে শৈলী নির্বাচন করতে পারেন।
এই শৈলী বোতামের রঙকে অ্যাকসেন্ট রঙে পরিবর্তন করে,colorAccent
। অ্যাকসেন্ট রঙres/values/colors.xml
ফাইলে সংজ্ঞায়িত করা হয়েছে।
colors.xml
ফাইলে আপনার অ্যাপের জন্য ডিফল্ট রং রয়েছে। আপনার অ্যাপের প্রয়োজনীয়তার উপর ভিত্তি করে আপনি নতুন রঙের সংস্থান যোগ করতে পারেন বা আপনার প্রকল্পে বিদ্যমান রঙের সংস্থানগুলি পরিবর্তন করতে পারেন।
নমুনা colors.xml
ফাইল:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="colorPrimary">#008577</color>
<color name="colorPrimaryDark">#00574B</color>
<color name="colorAccent">#D81B60</color>
</resources>
ধাপ 2: DONE বোতামটি স্টাইল করুন
- বৈশিষ্ট্য ফলকে, Layout_Margin > Top নির্বাচন করে একটি শীর্ষ মার্জিন যোগ করুন। উপরের মার্জিনটিকে
layout_margin
এ সেট করুন, যাdimens.xml
ফাইলে সংজ্ঞায়িত করা হয়েছে। - ড্রপ-ডাউন মেনু থেকে
fontFamily
roboto
সেট করুন। - টেক্সট ট্যাবে স্যুইচ করুন এবং নতুন যোগ করা বোতামের জন্য জেনারেট করা XML কোড যাচাই করুন।
<Button
android:id="@+id/done_button"
style="@style/Widget.AppCompat.Button.Colored"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="@dimen/layout_margin"
android:fontFamily="@font/roboto"
android:text="@string/done" />
ধাপ 3: রঙের সংস্থান পরিবর্তন করুন
এই ধাপে, আপনি আপনার কার্যকলাপের অ্যাপ বারের সাথে মেলে বোতামের উচ্চারণ রঙ পরিবর্তন করুন।
-
res/values/colors.xml
খুলুন এবং colorAccent এর মান#76bf5e
colorAccent
পরিবর্তন করুন।
<color name="colorAccent">#76bf5e</color>
আপনি ফাইল সম্পাদকের বাম মার্জিনে, HEX কোডের সাথে সম্পর্কিত রঙ দেখতে পারেন।
ডিজাইন এডিটরে বোতামের রঙের পরিবর্তন লক্ষ্য করুন।
- আপনার অ্যাপ চালান। আপনি সম্পাদনা পাঠ্যের নীচে একটি স্টাইল করা সম্পন্ন বোতাম দেখতে পাবেন।
ব্যবহারকারী একটি ডাকনাম প্রবেশ করান এবং সম্পন্ন বোতামে ট্যাপ করার পরে, ডাকনামটি TextView
ভিউ ভিউতে প্রদর্শিত হয়। এই টাস্কে, আপনি একটি রঙিন ব্যাকগ্রাউন্ড সহ একটি টেক্সট ভিউ যোগ করুন। টেক্সট ভিউ star_image
এর উপরে ব্যবহারকারীর ডাকনাম প্রদর্শন করে।
ধাপ 1: ডাকনামের জন্য একটি TextView যোগ করুন
- প্যালেট ফলক থেকে কম্পোনেন্ট ট্রিতে একটি পাঠ্য দৃশ্য টেনে আনুন। টেক্সট ভিউটি সম্পন্ন_বোতামের নিচে এবং
done_button
উপরেstar_image
। - নতুন
TextView
ভিউয়ের জন্য নিম্নলিখিত বৈশিষ্ট্যগুলি সেট করতে বৈশিষ্ট্য ফলকটি ব্যবহার করুন:
বৈশিষ্ট্য | মান |
| |
| |
| (কেন্দ্র) |
ধাপ 2: TextView এর দৃশ্যমানতা পরিবর্তন করুন
আপনি visibility
বৈশিষ্ট্য ব্যবহার করে আপনার অ্যাপে ভিউ দেখাতে বা লুকাতে পারেন। এই বৈশিষ্ট্যটি তিনটি মানগুলির মধ্যে একটি নেয়:
-
visible
: দৃশ্য দৃশ্যমান। -
Invisible
: দৃশ্যটি লুকিয়ে রাখে, কিন্তু দৃশ্যটি এখনও লেআউটে স্থান নেয়। -
gone
: ভিউ লুকিয়ে রাখে, এবং ভিউ লেআউটে কোনো জায়গা নেয় না।
- অ্যাট্রিবিউট প্যানে,
nickname_text
টেক্সট ভিউ-এরvisibility
সেট করুনgone
, কারণ আপনি চান না যে আপনার অ্যাপটি প্রথমে এই টেক্সট ভিউ দেখাক।
লক্ষ্য করুন যে আপনি যখন অ্যাট্রিবিউট প্যানে অ্যাট্রিবিউট পরিবর্তন করবেন,nickname_text
ভিউ ডিজাইন এডিটর থেকে অদৃশ্য হয়ে যাবে। লেআউট প্রিভিউতে ভিউ লুকানো আছে। -
nickname_text
ভিউ-এরtext
অ্যাট্রিবিউট মান একটি খালি স্ট্রিং-এ পরিবর্তন করুন।
এই TextView
জন্য আপনার জেনারেট করা XML কোড এর মত দেখতে হবে:
<TextView
android:id="@+id/nickname_text"
style="@style/NameStyle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textAlignment="center"
android:visibility="gone"
android:text="" />
আপনার লেআউট পূর্বরূপ নিম্নলিখিত মত কিছু দেখতে হবে:
Button
অবজেক্টে একটি ক্লিক হ্যান্ডলার (অথবা যেকোনো ভিউতে) বোতামটি (ভিউ) ট্যাপ করার সময় সঞ্চালিত ক্রিয়াটি নির্দিষ্ট করে। যে ফাংশনটি ক্লিক ইভেন্ট পরিচালনা করে সেটি Activity
প্রয়োগ করা উচিত যা বোতাম (ভিউ) সহ লেআউট হোস্ট করে।
ক্লিক শ্রোতার সাধারণভাবে এই বিন্যাস রয়েছে, যেখানে পাস করা ভিউ হল সেই ভিউ যা ক্লিক বা ট্যাপ পেয়েছে।
private fun clickHandlerFunction(viewThatIsClicked: View) {
// Add code to perform the button click event
}
আপনি ক্লিক-লিসেনার ফাংশনটি বোতামে ক্লিক ইভেন্টে দুটি উপায়ে সংযুক্ত করতে পারেন:
- XML লেআউটে, আপনি
<Button>
উপাদানটিতেandroid:onClick
বৈশিষ্ট্য যোগ করতে পারেন। উদাহরণ স্বরূপ:
<Button
android:id="@+id/done_button"
android:text="@string/done"
...
android:onClick="clickHandlerFunction"/>
বা
- আপনি
setOnClickListener
এ কল করেActivity
onCreateonCreate()
এ রানটাইমে প্রোগ্রাম্যাটিকভাবে এটি করতে পারেন। উদাহরণ স্বরূপ:
myButton.setOnClickListener {
clickHanderFunction(it)
}
এই টাস্কে, আপনি done_button
জন্য প্রোগ্রাম্যাটিকভাবে একটি ক্লিক লিসেনার যোগ করুন। আপনি সংশ্লিষ্ট কার্যকলাপে ক্লিক শ্রোতা যোগ করুন, যা MainActivity.kt
।
আপনার ক্লিক-শ্রোতা ফাংশন, যাকে বলা হয় addNickname
, নিম্নলিখিত কাজ করবে:
-
nickname_edit
edit text থেকে লেখাটি পান। -
nickname_text
টেক্সট ভিউতে টেক্সট সেট করুন। - সম্পাদনা পাঠ্য এবং বোতামটি লুকান।
- ডাকনাম
TextView
প্রদর্শন করুন।
ধাপ 1: একটি ক্লিক শ্রোতা যোগ করুন
- অ্যান্ড্রয়েড স্টুডিওতে,
java
ফোল্ডারে,MainActivity.kt
ফাইলটি খুলুন। -
MainActivity.kt
এ,MainActivity
ক্লাসের ভিতরে,addNickname
নামে একটি ফাংশন যোগ করুন।view
অফ টাইপView
নামে একটি ইনপুট প্যারামিটার অন্তর্ভুক্ত করুন।view
প্যারামিটার হল সেইView
যার উপর ফাংশন বলা হয়। এই ক্ষেত্রে,view
আপনার সম্পন্ন বোতামের একটি উদাহরণ হবে।
private fun addNickname(view: View) {
}
-
addNickname
ফাংশনের ভিতরে,nickname_edit
সম্পাদনা টেক্সট এবংnickname_text
টেক্সট ভিউ-এর রেফারেন্স পেতেfindViewById()
ব্যবহার করুন।
val editText = findViewById<EditText>(R.id.nickname_edit)
val nicknameTextView = findViewById<TextView>(R.id.nickname_text)
-
nicknameTextView
টেক্সটভিউ টেক্সট ভিউতে টেক্সট সেট করুন যে টেক্সট ব্যবহারকারীeditText
এ প্রবেশ করেছেন, এটিtext
বৈশিষ্ট্য থেকে পেয়ে।
nicknameTextView.text = editText.text
-
View.GONE
এeditText
এরvisibility
বৈশিষ্ট্য সেট করে ডাকনামEditText
ভিউ লুকান।
পূর্ববর্তী টাস্কে, আপনি লেআউট এডিটর ব্যবহার করে visibility
বৈশিষ্ট্য পরিবর্তন করেছেন। এখানে আপনি একই জিনিস প্রোগ্রাম্যাটিকভাবে করবেন।
editText.visibility = View.GONE
-
visibility
বৈশিষ্ট্যView.GONE
এ সেট করে সম্পন্ন বোতামটি লুকান। আপনার কাছে ইতিমধ্যেই ফাংশনের ইনপুট প্যারামিটার হিসাবে বোতামের রেফারেন্স রয়েছে,view
।
view.visibility = View.GONE
-
addNickname
ফাংশনের শেষে, View.VISIBLE-এvisibility
বৈশিষ্ট্য সেট করে ডাকনামTextView
View.VISIBLE
দৃশ্যমান করুন।
nicknameTextView.visibility = View.VISIBLE
ধাপ 2: সম্পন্ন বোতামে ক্লিক শ্রোতাকে সংযুক্ত করুন
এখন আপনার কাছে একটি ফাংশন রয়েছে যা সম্পন্ন করা বোতামটি ট্যাপ করার সময় সঞ্চালিত ক্রিয়াটি সংজ্ঞায়িত করে, আপনাকে Button
ভিউতে ফাংশনটি সংযুক্ত করতে হবে।
-
MainActivity.kt
এ,onCreate()
ফাংশনের শেষে, DONEButton
ভিউ-এর একটি রেফারেন্স পান।findViewById()
ফাংশন ব্যবহার করুন এবংsetOnClickListener
কল করুন। ক্লিক-লিসেনার ফাংশনের একটি রেফারেন্সে পাস করুন,addNickname()
।
findViewById<Button>(R.id.done_button).setOnClickListener {
addNickname(it)
}
উপরের কোডে, it
done_button
বোঝায়, যা আর্গুমেন্ট হিসাবে পাস করা ভিউ।
- আপনার অ্যাপটি চালান, একটি ডাকনাম লিখুন এবং সম্পন্ন বোতামে আলতো চাপুন। লক্ষ্য করুন কিভাবে সম্পাদনা পাঠ্য এবং বোতামটি ডাকনাম পাঠ্য দৃশ্য দ্বারা প্রতিস্থাপিত হয়।
লক্ষ্য করুন যে ব্যবহারকারী ডন বোতামটি ট্যাপ করার পরেও, কীবোর্ডটি এখনও দৃশ্যমান। এই আচরণ ডিফল্ট.
ধাপ 3: কীবোর্ড লুকান
এই ধাপে, ব্যবহারকারী ডন বোতামে ট্যাপ করার পরে আপনি কীবোর্ড লুকানোর জন্য কোড যোগ করুন।
-
MainActivity.kt
এ,addNickname()
ফাংশনের শেষে, নিম্নলিখিত কোডটি যোগ করুন। এই কোডটি কীভাবে কাজ করে সে সম্পর্কে আপনি যদি আরও তথ্য চান, তাহলেhideSoftInputFromWindow
ডকুমেন্টেশন দেখুন।
// Hide the keyboard.
val inputMethodManager = getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager
inputMethodManager.hideSoftInputFromWindow(view.windowToken, 0)
- আপনার অ্যাপটি আবার চালান। লক্ষ্য করুন যে আপনি হয়ে গেছে আলতো চাপার পরে , কীবোর্ডটি লুকিয়ে আছে।
ডন বোতামে ট্যাপ করার পর ব্যবহারকারীর ডাকনাম পরিবর্তন করার কোনো উপায় নেই। পরবর্তী টাস্কে, আপনি অ্যাপটিকে আরও ইন্টারেক্টিভ করুন এবং কার্যকারিতা যোগ করুন যাতে ব্যবহারকারী ডাকনাম আপডেট করতে পারে।
এই টাস্কে, আপনি ডাকনাম টেক্সট ভিউতে একটি ক্লিক লিসেনার যোগ করুন। ক্লিক লিসেনার ডাকনাম টেক্সট ভিউ লুকিয়ে রাখে, এডিট টেক্সট দেখায় এবং ডন বোতাম দেখায়।
ধাপ 1: একটি ক্লিক শ্রোতা যোগ করুন
-
MainActivity
এ, ডাকনাম পাঠ্য দর্শনের জন্যupdateNickname(view: View)
নামে একটি ক্লিক-লিসেনার ফাংশন যোগ করুন।
private fun updateNickname (view: View) {
}
-
updateNickname
ফাংশনের ভিতরে,nickname_edit
সম্পাদনা টেক্সটের একটি রেফারেন্স পান এবং DONE বোতামে একটি রেফারেন্স পান। এটি করতে,findViewById()
পদ্ধতি ব্যবহার করুন।
val editText = findViewById<EditText>(R.id.nickname_edit)
val doneButton = findViewById<Button>(R.id.done_button)
-
updateNickname
ফাংশনের শেষে, সম্পাদনা টেক্সট দেখানোর জন্য কোড যোগ করুন, DONE বোতাম দেখান এবং টেক্সট ভিউ লুকান।
editText.visibility = View.VISIBLE
doneButton.visibility = View.VISIBLE
view.visibility = View.GONE
-
MainActivity.kt
এ, onCreateonCreate()
ফাংশনের শেষে,nickname_text
টেক্সট ভিউতেsetOnClickListener
এ কল করুন। ক্লিক-লিসেনার ফাংশনের একটি রেফারেন্সে পাস করুন, যা হলupdateNickname()
।
findViewById<TextView>(R.id.nickname_text).setOnClickListener {
updateNickname(it)
}
- আপনার অ্যাপ চালান। একটি ডাকনাম লিখুন, সম্পন্ন বোতামে আলতো চাপুন, তারপর ডাকনাম
TextView
ভিউতে আলতো চাপুন। ডাকনাম দৃশ্য অদৃশ্য হয়ে যায়, এবং সম্পাদনা পাঠ্য এবং সম্পন্ন বোতামটি দৃশ্যমান হয়।
লক্ষ্য করুন যে ডিফল্টরূপে, EditText
ভিউতে ফোকাস নেই এবং কীবোর্ড দৃশ্যমান নয়। ব্যবহারকারীর জন্য ডাকনাম পাঠ্য দৃশ্যটি ক্লিকযোগ্য তা বের করা কঠিন। পরবর্তী টাস্কে, আপনি ডাকনাম পাঠ্য দৃশ্যে ফোকাস এবং একটি শৈলী যোগ করুন।
ধাপ 2: EditText ভিউতে ফোকাস সেট করুন এবং কীবোর্ড দেখান
-
updateNickname
ফাংশনের শেষে,EditText
ভিউতে ফোকাস সেট করুন।requestFocus()
পদ্ধতি ব্যবহার করুন।
// Set the focus to the edit text.
editText.requestFocus()
-
updateNickname
ফাংশনের শেষে, কীবোর্ডটি দৃশ্যমান করতে কোড যোগ করুন।
// Show the keyboard.
val imm = getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager
imm.showSoftInput(editText, 0)
ধাপ 3: ডাকনাম TextView ভিউতে একটি পটভূমির রঙ যোগ করুন
-
nickname_text
টেক্সট ভিউয়ের পটভূমির রঙ@color/colorAccent
এ সেট করুন এবং@dimen/small_padding
এর নিচের প্যাডিং যোগ করুন। এই পরিবর্তনগুলি ব্যবহারকারীর কাছে একটি ইঙ্গিত হিসাবে কাজ করবে যে ডাকনাম পাঠ্য দৃশ্যটি ক্লিকযোগ্য।
android:background="@color/colorAccent"
android:paddingBottom="@dimen/small_padding"
- আপনার চূড়ান্ত অ্যাপ্লিকেশন চালান. সম্পাদনা পাঠে ফোকাস রয়েছে, ডাকনাম সম্পাদনা পাঠে প্রদর্শিত হয় এবং ডাকনাম পাঠ্য দৃশ্যটি স্টাইল করা হয়।
এখন বন্ধুকে আপনার ইন্টারেক্টিভ AboutMe অ্যাপ দেখান!
অ্যান্ড্রয়েড স্টুডিও প্রকল্প: AboutMeInteractive
- অ্যান্ড্রয়েড স্টুডিওতে লেআউট এডিটর টুল হল একটি ভিজ্যুয়াল ডিজাইন এডিটর। আপনি আপনার লেআউটে UI উপাদানগুলিকে টেনে এনে আপনার অ্যাপের বিন্যাস তৈরি করতে লেআউট সম্পাদক ব্যবহার করতে পারেন।
-
EditText
হল একটি UI উপাদান যা ব্যবহারকারীকে পাঠ্য প্রবেশ করতে এবং সংশোধন করতে দেয়। - একটি
Button
একটি UI উপাদান যা ব্যবহারকারী একটি ক্রিয়া সম্পাদন করতে আলতো চাপতে পারে৷ একটি বোতামে পাঠ্য, একটি আইকন, বা পাঠ্য এবং একটি আইকন উভয়ই থাকতে পারে।
শ্রোতা ক্লিক করুন
- আপনি এটিতে একটি ক্লিক শ্রোতা যোগ করে যেকোন
View
ট্যাপ করার প্রতিক্রিয়া তৈরি করতে পারেন। - যে ফাংশনটি ক্লিক শ্রোতাকে সংজ্ঞায়িত করে সেটি ক্লিক করা
View
পায়।
আপনি দুটি উপায়ে একটি View
একটি ক্লিক-শ্রোতা ফাংশন সংযুক্ত করতে পারেন:
- XML লেআউটে,
<
View
>
উপাদানটিতেandroid:onClick
অ্যাট্রিবিউট যোগ করুন। - প্রোগ্রামগতভাবে, সংশ্লিষ্ট
Activity
setOnClickListener(View.OnClickListener)
ফাংশনটি ব্যবহার করুন।
উদাসীনতা কোর্স:
অ্যান্ড্রয়েড বিকাশকারী ডকুমেন্টেশন:
এই বিভাগে একজন প্রশিক্ষকের নেতৃত্বে একটি কোর্সের অংশ হিসাবে এই কোডল্যাবের মাধ্যমে কাজ করা শিক্ষার্থীদের জন্য সম্ভাব্য হোমওয়ার্ক অ্যাসাইনমেন্ট তালিকাভুক্ত করা হয়েছে। নিম্নলিখিতগুলি করা প্রশিক্ষকের উপর নির্ভর করে:
- প্রয়োজনে হোমওয়ার্ক বরাদ্দ করুন।
- শিক্ষার্থীদের সাথে যোগাযোগ করুন কিভাবে হোমওয়ার্ক অ্যাসাইনমেন্ট জমা দিতে হয়।
- হোমওয়ার্ক অ্যাসাইনমেন্ট গ্রেড.
প্রশিক্ষকরা এই পরামর্শগুলি যতটা কম বা যতটা চান ততটা ব্যবহার করতে পারেন, এবং তাদের উপযুক্ত মনে করে অন্য কোনও হোমওয়ার্ক বরাদ্দ করতে নির্দ্বিধায় করা উচিত।
আপনি যদি এই কোডল্যাবের মাধ্যমে নিজে থেকে কাজ করে থাকেন, তাহলে আপনার জ্ঞান পরীক্ষা করার জন্য এই হোমওয়ার্ক অ্যাসাইনমেন্টগুলি ব্যবহার করুন।
এই প্রশ্নগুলোর উত্তর দাও
প্রশ্ন 1
EditText
একটি সাবক্লাস কি?
-
View
-
LinearLayout
-
TextView
-
Button
প্রশ্ন 2
নিচের কোন visibility
অ্যাট্রিবিউট মান, যদি ভিউতে সেট করা থাকে, তাহলে ভিউটি লুকানো থাকে এবং লেআউটে কোনো জায়গা নেয় না?
-
visible
-
Invisible
-
gone
-
hide
প্রশ্ন 3
EditText
ভিউগুলির জন্য, ইঙ্গিত প্রদান করা একটি ভাল অভ্যাস নয়, কারণ ইঙ্গিতগুলি ইনপুট ক্ষেত্রকে বিশৃঙ্খল করে। সত্য অথবা মিথ্যা?
- সত্য
- মিথ্যা
প্রশ্ন 4
নিচের কোন বিবৃতিটি Button
দৃষ্টিভঙ্গি সম্পর্কে সত্য?
- একটি
Button
ভিউ একটি ভিউ গ্রুপ। - প্রতি স্ক্রীনে আপনার কাছে মাত্র তিনটি
Button
ভিউ থাকতে পারে। -
Button
দর্শনগুলি ক্লিকযোগ্য, এবং ক্লিকে, সংযুক্ত ক্লিক শ্রোতা একটি ক্রিয়া সম্পাদন করে৷ -
Button
হলImageView
এর একটি এক্সটেনশন।
পরবর্তী পাঠ শুরু করুন:
এই কোর্সে অন্যান্য কোডল্যাবগুলির লিঙ্কগুলির জন্য, Android Kotlin Fundamentals codelabs ল্যান্ডিং পৃষ্ঠাটি দেখুন।