ආයුබෝවන් ඔයාලා හැමෝටම..මේ මගේ Android Development in Sinhala පාඩම් මාලාවේ 6 වෙනි post එක...ඉතින් මම හිතනවා ඔයාලා කලින් post වලින් Android ගැන මූලික අවබෝධයක් ලබා ගත්තා කියලා...අද මම EditText එකක් භාවිතෙන් user input එකක් ලබා ගැනීමට සහ Button එකක් press කරලා එහි output එක ලබා ගන්න විදිහ කියලා දෙන්නම්…
Android project එකක් හදාගන්න විදිහ ඔයාලා දැනටමත් දන්නවානේ.පළමුවෙන්ම ඔයා Android Studio open කරලා new project එකක් හදාගන්න ඔිනි.මම Application name එකට HandlingButton කියලා දුන්නා.මෙහිදී අනිත් steps වල default values වෙනස් නොකර project එක create කර ගත්තම හරි.
දැන් project window එකේ තියන activity_main.xml එකට ගියාම layout එක විදිහට තියන්නේ android.support.constraint.ConstraintLayout එක.ඒ වගේම Hello World ලෙස TextView එකත් තියනවා.අපිට ඒක අවශ්ය වෙන්නේ නැති නිසා TextView එක අයින් කරන්න.
ඊළඟට එහි තියන layout එක LinearLayout එකකට වෙනස් කරන්න.දැන් orientationඑකට vertical කියලා දුන්නම හරි..
දැන් බලමු Button එකක් හදාගන්න විදිහ…
Button tag එක use කරලා Button එකක් add කරගන්න පුලුවන්.
ඒ සඳහා layout XML එක තුළ <Button කියලා type කරාම dropdown list පෙන්නනවා.මෙතනින් අපිට අවශ්ය වෙන්නේ පළවෙනි Button type එක නිසා ඒක enter කරන්න.
දැන් Button එක සඳහා width එක සහ height එකක් ලබා දෙන්න.Button එක සඳහා XML code එක පහළින් තියනවා.
ඊළඟට කරන්න තියන්නේ Edit Text එකක් හදාගන්න.මේ සඳහා use කරන්නේ EditText tag එක.
layout XML එක තුළ <EditText කියලා type කරලා enter කරන්න.
අපි හදපු layout එකට අදාළ code එක සහ design view එක පහළින් දැක්වෙනවා.
ඉහතින් නිර්මාණය කරපු Button එක සහ EditText එක සඳහා XML code ලියන්නේ නැතුව palette එක තියන widgets සහ components drag and drop කිරිම මඟින් ද මේ layout එක හදාගන්න පුලුවන්.ඉදිරියට කරන පාඩම් වලදි මේ ගැන මම කියලා දෙන්නම්.
දැන් කරන්න තියන්නේ Button එකට සහ EditText එකට functionality add කරන්න.ඒ සඳහා java code ලිවීමට MainActivity.java open කරන්න.එවිට පහත දැක්වෙන code එක බලා ගන්න පුලුවන්.ඒ වගේම එහි තිබෙන MainActivity class එක තුළ overridden method එකක් තියනවා.මුලින්ම code එක පිළිබඳ අවබෝධයක් ලබා ගමු.
- MainActivity:මේක අපේ java code ලියන class name එක වගේම activity name එකද වෙනවා.ඔයාලට මතක ඇති project create කරනකොට මේ name එක දෙනවා.
- AppCompatActivity: MainActivity class එක extend වෙන්නේ මේ class එකෙන්.AppCompatActivity class එක reference වෙන විදිහ පහළින් තියන link එකට ගිහින් බලන්න පුලුවන්.
- onCreate(Bundle savedInstanceState):මේ method එක overridden method එකක් වගේම AppCompatActivity class එක තුළ තමයි තියන්නේ.Activity එක create වෙනකොට මේ method එක execute වෙනවා.ඒ නිසා main method එක ලෙසත් සලකන්න පුලුවන්.
- Bundle:මේ class එක predefined class එකක්.මූලිකව මෙය යොදාගන්නේ android activities අතර data pass කරන්න.
- setContentView(R.layout.activity_main): මේ method එක මඟින් activity එකට අපි හදපු activity_main.xml layout එක set කරන්න පුලුවන්.අපේ layout එකට අදාළ id එක R.java file එක තුළින් select කරගන්න ඔිනි.(සියලුම component සඳහා ids automatically generate වෙලා store වෙන්නේ R.java file එක තුළ)
Android වල සියලුම component සඳහා predefined classes තියනවා.දැන් බලමු Button එකට සහ EditText එකට coding කරන විදිහ.
පළමුවෙන් MainActivity class එක තුළ instances 2ක් වෙන වෙනමButton එකට සහ EditText එකට declare කරගන්න.
දැන් පහත රූපයේ දැක්වෙන පරිදි error එකක් තියනවා නම්,ඒකට හේතුව ඊට අදාළ packages import කරලා නැහැ කියන එක.packages import කරන්න නම් Error එක තියන තැනට cursor එක ගෙනිහින් alt+enter Press කරාම හරි.
දැන් onCreate method එක තුළ අපේ instances 2ක initialize කරන්න ඔිනි.
Button සහ EditText කියන්නේ Views කියලා ඔයාලා දැනටමත් දන්නවා.android තුළ මෙම View සඳහා predefined class එකක් තියනවා.XML layout file එක තුළ තියන View initialize කිරීමට findViewById() method එක භාවිතා කරනවා.
OnCreate() method එකට ගිහින් පහළින් දැක්වෙන විදිහට code එක ලියන්න.
ඊළඟට මම කරන්නේ EditText එකට ලබාදෙන name එකක් ඒ editText එක තුළින්ම message එකක් ලෙස show කරන්නේ කොහොමද කියලා.මේ සඳහා මම showMessage()(method name එකට ඔයාලට කැමති නමක් දෙන්න පුලුවන්) කියලා method එකක් හදාගන්නවා.අපේ editText එක හැසිරවීමට මෙහිදී getText () සහ setText () භාවිතා කරනවා.මේ methods වලින් වෙන්නේ මොක්කද කියලා මම කියලා ඉන්නම්.
- getText() method එක තුළ EditText එක තුළින් ගන්න text අන්තර්ගත වෙනවා.
- String object එකක් තුළ අපි type කරන text store කිරීමට පෙර String බවට convert කිරීමට toString() method එක භාවිතා කරනවා.
- setText(String s): මේ method එකෙන් EditText එකට string එකක් set කරනවා.
ඉහතින් විස්තර කරපු methods භාවිතෙන් showMessage() method එක තුළ code කරන්න පුලුවන්.පහළින් තියන රූපය බලන්න.
දැන් Button එක handle කිරීමට View class එක තුළ ඇති OnClickListener කියන Interface එක යොදාගන්නවා.පළමුවෙන් මෙම Interface එක MainActivity class එකට implement කරමු.මෙහිදී OnClickListener interface එක implement කරත්, ඒ තුළ methods override කරලා නැති නිසා අපිට error එකක් පෙන්නනවා.
Error එක ඉවත් කිරීමට ඒ line එක මතට cursor එක ගෙනිහින් alt+enter press කරලා එන dropdown list එකෙන් Implement methods Click කරන්න.
දැන් එන window එකෙන් onClick() select කරලා OK button එක Click කරන්න.
එවිට පහළින් දැක්වෙන method එක MainActivity class එක තුළ හැදෙනවා.මේ method එක භාවිතයෙන් button එක tap කරාම ඊට අදළ action ක්රියාත්මක වෙනවා.
setOnClickListener() method එක භාවිතයෙන් onCreate() එක තුළ button එකට listener එකක් හදාගන්න වෙනවා.දැන් showMessage() method එක onClick() method එක තුළ call කරන්න.
පහත දැක්වෙන code එක බලන්න.
අපේ app එකේ coding part එක කරලා ඉවරයි.දැන් application එක run කරලා බලන්න පුලුවන්.ඔයාගේ නම EditText එක මත type කරලා Button එක Tap කරාම EditText එක තුළ message එක පෙනේවි..
තවත් අලුත් post එකකින් හමුවන තෙක් හැමෝටම සුබ දවසක්…