Monday, December 24, 2012

අදුරට එලියක්. Flash Light App - 3


 


       
      Android - App
      
        අදුරට එලියක්.

        Flash Light App - 3

    අපි මොනවද මේ code කලේ ???



මම හිතනවා, ඔයාල දැන් අපේ Android App එක run කරල බලන්න ඇති කියලා. නමුත් ඔයාල ගොඩක් දෙනෙක්, මම දාලා තිබුන code එක copy කරන්න ඇති, එහෙමත් නැත්තම් type කරලා Android එක 

හදන්න ඇති. ඉතින් අපි අද බලමු, අපි type කලේ මොනවාද? ඒවගෙ තේරුම මොකද්ද කියල.

මොනවද මේ resource files කියලා කියන්නේ?


මම කලින් ලිපියක පැහැදිලි කලා වගේ මේ resource files හරහා තමයි,  අපිට අපේ  App එකට ඕනි කරන, සම්පත් නැති නම් ප්‍රභවයන් වෙනස් කල හැකි පරිදි (වෙනස් කරනවා යැයි අදහස් කලේ, අපේ java code එකේ වෙනසක් නොකර වෙනස් කල හැකි පරිදි) ගබඩා කර තැබීමට උදවු වෙන කේතයන් කොටසක්. 

අපි අපේ මේ පොඩි App එකෙත්, එවන් වූ  resources වර්ග දෙකක් භාවිතා කරනවා. ඒ තමයි  strings හා  colors කියන ඒවා.

මම  strings.xml එක ගැන කියන්නම්.

-- > strings.xml 


මේවා  .xml tags හරහා තමයි පෙන්නලා දීලා තියෙන්නේ... මුල්ම පේලියේ තියෙන්නෙ,

      <?xml version="1.0" encoding="utf-8"?>

මේක .xml එකක්,  එම  xml version එක හා  encoding type එක මොකද්ද කියන එක. ඊට පස්සේ ඔයාලට බලන්න පුළුවන්  <resources> කියල  tag එකක්.  එම  tag එක හරහා අපි  configure කරන්න යන  resources මොනවාද කියලා අපි  xml එකට කියන්න යන්නේ. 

අපි දැන් කතා කරන්නේ, අපේ  strings.xml එක ගැන. ඒ කියන්නේ, මේකේ තියෙන්නේ, අපි  App එකේ භාවිතා කරන,  strings මොනවද කියන එක ගැන.

     <string name="to_white">To White</string>
  

ඔන්න අපේ එක  string resource එකක්.  <string> කියන tag එක යටතේ අපි "To White" කියන වාක්‍ය ඛන්ඩය අපි resource කරලා තියෙනවා. දැන් අපිට අපේ  App එකේ  "To White" කියන එක පෙන්න ගන්න ඕනි නම්, අපි කරන්නෙ අදාල  string resource එකේ, name එක භාවිතා කරන එක.මෙහිදී නම්, to_white කියන එක. මම මේ ගත්ත  resource එක භාවිතා කරපු තැනක් මෙතනම පෙන්වන්නම්.


   android:text="@string/to_white"


මේක තියෙන්නේ, main.xml එකේ, <Button> කියන tag එක ඇතුලේ. ඇත්තෙන්ම මෙතනදි වෙලා තියෙන්නෙ, අදාල  Button එකේ මට පෙන්නන්න ඔනේ "To White" කියන කොටස. 
මම ඒක මගේ  resources හරහා කරලා තියෙනවා.එතකොට මෙහි තියෙන අනිත්  string resources ඒ වගේම තමයි.



මීලගට තියෙන්නේ colors.xml

-- > color.xml
මෙහිදී මම  resource කරගෙන තියෙන්නේ මට අවශ්‍ය කරන පාටවල්.  එම  .xml එකෙත්, පෙර කී කොටස් එසේම තියෙනවා වගේම, එහි වෙනසකට තියෙන්නේ,  <color> කියන  tag එක.

       <color name="green">#00FF00</color>


එහි අපිට නොතේරෙන කොටසක් තියෙනවා. ඒක තමයි  #00FF00 කියන එක. මේ තියෙන්නේ,  අපි හැමෝම දන්න  html color code එකක්. ඉතින් ඔය වගේ color code මට මගේ  code එකේ දාල කැත
කර ගන්න බැරි නිසා තමයි මම ඒවත් මේ විදියට  resource කර ගත්තේ.

මොකද මට පාටවල් ඕනි කරන වෙලාවට, මට මගේ තියන  resources පහත ආකාරයට භාවිතා කරන්න පුළුවන් නිසා.

       android:background="@color/green"


මේක තියෙන්නෙ,  main.xml කියන  xml එකේ  <linearlayout> කියන tag එක ඇතුලේ. ඒ හරහා තමයි මම, මගේ  interface එක කොල පාට කරගෙන තියෙන්නේ. 




මොනවද මේ interface files කියලා කියන්නේ?

දැන් අපි interface ගැන බලමු එහෙනම්. අපේ  code එකේ  interfaces දෙකක් තියෙනවානේ...

මුලින්ම  main.xml බලමු.

-- > main.xml

දැන් ඔයාලට බලන්න පුළුවන්, ඔයාලට පෙනෙන  interface හා  ඒක හදා ගන්න අපි යොදා ගත්ත  xml එක.


බලන්නකො, මුලින්ම main.xml එකේ තියෙනව, <linearlayout> කියල tag එකක්. Android වල හැම interface එකක් සඳහාම,  layout එකක් තියෙනවා. අපි මෙහි යොදාගෙන තියෙන්නේ linearlayout එකක්. 

මේ layout එකට අමතරව, තවත් layout කිහිපයක්ම තියෙනවා. අපි ඒව ගැන ඉදිරි උදාහරන වලදි බලමු. ඒ <linearlayout> tag එක ඇතුලෙ, තව ගොඩක් දේවල් තියෙනව ඔයාලට දකින්න පුළුවන්. ඒවට කියන්නෙ  layout එකේ තියෙන attributes කියලා. ඒ attributes වලින් තමයි, අපේ layout එක මොනවගේ එකක් වෙන්න ඕනිද කියල අපි කියලා දෙන්නෙ...


android:orientation="vertical"      --> අපගේ layout එක සිරස් එකක්ද, තිරස් එකක්ද යන වග (මෙහි එය සිරස් එකක් බව දක්වා ඇත)

android:layout_width="fill_parent"  --> layout එකේ තිරස් සැකැස්ම පූර්ණ එකක්ද, කොටස් එකක්ද යන වග (මෙහි එය පූර්ණ එකක් බව දක්වා ඇත)

android:layout_height="fill_parent" --> layout එකේ සිරස් සැකැස්ම පූර්ණ එකක්ද, කොටස් එකක්ද යන වග (මෙහි එය පූර්ණ එකක් බව දක්වා ඇත)

android:background="@color/green"   --> layout එකේ පසුබිම් වර්ණය

android:gravity="center"            --> layout එකේ ඇති  Objects සඳහා බලපාන මූලික ස්ථාන ගත වීම (මෙහි එය මැද යන බව දක්වා ඇත)




ඊට පස්සේ ඔයාලට බලා ගන්න පුළුවන්,  <TextView> කියලා tag එකක්. මෙම  TextView හරහා තමයි, අපිට ඕනි කරන වැකි, අපගේ  interface එක මත පෙන්වන්නේ.

එහිද ඔයාලට දකින්න පුළුවන්,  attributes කිහිපයක්.

android:layout_height="wrap_content"        --> TextView එකේ සිරස් සැකැස්ම පූර්ණ එකක්ද, කොටස් එකක්ද යන වග (මෙහි එය කොටස් එකක් බව දක්වා ඇත)

android:layout_width="fill_parent"             --> TextView එකේ තිරස් සැකැස්ම පූර්ණ එකක්ද, කොටස් එකක්ද යන වග (මෙහි එය පූර්ණ එකක් බව දක්වා ඇත)

android:text="@string/instruction_to_white"  --> TextView එකේ දර්ශනය විය යුතු වැකිය. (ඔයාලට බලන්න පුළුවන් මෙතනදි, අපි කලින් කතා කරපු  string resource එකක් භාවිත කරල තියෙනව කියලා)

android:gravity="center"                                     --> TextView එකේ ඇති  Objects සඳහා බලපාන මූලික ස්ථාන ගත වීම (මෙහි එය මැද යන බව දක්වා ඇත)

android:textColor="@color/black"                 --> TextView එකේ ඇති අකුරු සඳහා යොදාගත යුතු වර්ණය. (මෙහිදී අපි color resource එකක් භාවිතා කරල තියෙනවා)



ඉන් පසුව තියෙන්නේ, <Button> කියලා tag එකක්. ඒකනම් ඔයාල කවුරුත් දන්න Button එකක්. අපි බලමු, ඒකෙ තියෙන attributes මොනවද කියලා.


android:id="@+id/to_green_button"           --> Button එක සඳහා අපි යොදා ගැනීමට බලාපොරොත්තු වෙන, id එක මොකද්ද යන වග. මේ id හරහා තමයි, අපි ලියන java code එකේදි, මේ  Button එක හදුනා ගන්නේ. එය ඕනෑම  Object සඳහා යොදා ගන්න පුළුවන්. ඒ වගේම ඕනිම  Object එකක් අපි java code එකේදි හදුනා ගන්නේ මේ id එක හරහායි.

android:layout_height="wrap_content"  --> Button එකේ සිරස් සැකැස්ම පූර්ණ එකක්ද, කොටස් එකක්ද යන වග (මෙහි එය කොටස් එකක් බව දක්වා ඇත)

android:layout_width="fill_parent"       --> Button එකේ තිරස් සැකැස්ම පූර්ණ එකක්ද, කොටස් එකක්ද යන වග (මෙහි එය පූර්ණ එකක් බව දක්වා ඇත)

android:text="@string/to_green"              --> Button එකේ දර්ශනය විය යුතු වැකිය.



අපි දැන් එක interface එකක තියෙන සියලුම  Objects මොනවාද, ඒවගේ attributes මොනවාද කියන එක කතා කලා. ඉදිරියේදි අපි භාවිතා කරන උදාහරනත් සමඟ අලුත් Objects ගැන කතා කරමු.

ඒවගේම ඔයාලත් xml එකේ දාන්න පුළුවන් tag හරහා අපිට භාවිතා කරන්න පුළුවන් වෙනත්  Objects අත්හදා බලන්න. අලුත් xml file එකක  <  මෙන්න මේ සලකුන යොදලා  Ctrl + Space ගහපුහාම, ඕනි තරම් අලුත් tags ඔයාලට බලා ගන්න පුළුවන් වේවි.


ඒවගේම තවත් දෙයක් කියන්න ඕනි. බලන්න අපි ඉහත භාවිතා කල සෑම Objects එකක් සඳහාම  android:layout_height හා  android:layout_width කියන attributes භාවිතා කරලා තියෙනවා නේද?

මෙම  attributes හරහා තමයි, අපිට interface එකේ දර්ශනය වෙන, ඕනෙම Objects එකක, සිරස් හා තිරස් ස්වභාවය ගැන විස්තර කරන්නේ. මෙම attributes නැතිනම්, ඇත්තෙන්ම Object එකක් සම්පූර්ණ නෑ.


අපගේ අනිත් interface එකත්, අපි දැන් කතා කරපු interface එකට බොහෝ දුරට සමානයි. එහි පවතින්නේ, ඉතා කුඩා වෙනස් කම් කිහිපයක් පමනයි. ඔයාලට පුළුවන් දැන් ඒ වෙනස් කම් මොනවාද කියලා හොයලා බලන්න.

එහෙනම් අපි මීළඟ ලිපියෙන් අපේ java code එක ගැන කතා කරමු.


ඔයාලට මේ කරපු දේ ටික ගැන ප්‍රශ්න තියෙනව නම් comment කරන්න නැති නම් mail කරන්න kavi707@gmail.com 


Read More

SQL සිංහලෙන් - පලමු පියවර

SQL එහෙමත් නැත්නම් Structured Query Language කියන්නෙ ඩේටාබේස් වලදි දත්ත හසුරුවන්න භාවිතා කරන විශේෂ භාෂාවක්. ඒ වගේම SQL සම්මතයක් බවට පත්වෙලයි තියෙන්නෙ. MySQL, SQL server, Oracle, Access කියන්නෙ මේ සම්මතය අනුගමනය කරන දත්ත කලමණාකරන පද්ධති (Database Management System - DBMS) කිහිපයක්.

SQL  සම්මතයක් වන නිසාම එය අනුගමනය කරන DBMS වල SELECT, UPDATE, DELETE, INSERT, WHERE වැනි විධාන වල සමානත්වයක් තියෙනව. කෙසේවෙතත් ඒ ඒ DBMS වලට අනන්‍යවූ විධානයන්ද දකින්න පුළුවන්.

MySQL කියන්නෙ SQL සම්මතය අනූව යන DBMS වලින් වඩාත්ම ජනප්‍රියම සහ බහුලවම භාවිතාවෙ පද්ධතිය. ඒකට එක හේතුවක් තමයි MySQL නිදහස් හා විවෘත්ත (Free and Open Source) ගණයට අයත්වීම.
ඒ නිසා අපි  අපේ පාඩම MySQL වලින් කරගෙන යමු.

මුදිතගෙ PHP පාඩම් වලට සම්බන්ධ වෙනව නම් මේ වෙද්දි wamp දාගෙන ඇති. වින්ඩෝස් පාවිච්චි කරන කෙනෙක් නම් මෙතනින් wamp දාගන්න විදිය කියලදෙන ඒ ලිපිය බලන්න. wamp එක්ක MySQL තියන නිසා කරදරයක් නෑ.

ලිනක්ස් පාවිච්චි කරන අයව අමතක කරල බෑ නෙ. ටර්මිනල් එක අරගෙන උබුන්ටු නම්
sudo apt-get install mysql-server
ෆෙඩෝරා නම්
yum install mysql-server
දැන් කොහොමද  MySQL රන් කරන්නෙ. wamp පාවිචිකරනව නම් පහත රූපයේ විදියට wamp අයිකනය ක්ලික් කරල එන මෙනුවෙන්  MySQL >> MySQL console තෝරන්න.

ලිනක්ස් නම් ටර්මිනල් එතට ගිහින් මේ කමාන්ඩ් එක රන් කරන්න.
mysql -uroot -proot
වැඩේ හරි නම් මේ විදියට MySQL console එක දැකගන්න පුළුවන්.
 

මේ විදියට MySQL දාගත්තනම් දැන් වැඩේ පටන්ගන්න පුළුවන්. MySQL දාගන්න විදිය බොහොම කෙටියෙන් කිව්වෙ. කරගෙන යද්දි ගැටළු ආවොත් කමෙන්ට් එකකින් හරි facebook group එකෙන් අහන්නකො.

සරල විධාන කීපයක් කරල බලමු. දැනට තියන ඩේටාබේස් මොනවද කියල බලාගන්න
show databases;
මෙම විධානය ක්‍රියාත්මක කලවිට පහත පරිදි දැනට තියන ඩේටාබේස් ලිස්ට් එකක් බලාගන්න පුළුවන්.

 මීලඟට  විධානය ක්‍රියාත්මක කලයුතු ඩේටාබේස් එක තොරාගතයුතුයි. ඒ සඳහා යොදාගන්නේ use විධානයයි. උදාහරණයක් ලෙස අපට information_schema ඩේටාබේස් එක තොරාගතයුතු නම්
 use information_schema;
 information_schema ඩේටාබේස් එක තුල ඇති tables බලාගතයුතු නම්
show tables;
 මෙවිට  information_schema ඩේටාබේස් එක තුල ඇති tables ලිස්ට් එක්ක දැකගත හැක.  information_schema ඩේටාබේස් එක තුල ඇති character_sets නැමති table එකෙහි ඇති සියළුම දත්ත ලබාගැනීමට
select * from character_sets;

මෙම සරල විධාන කිහිපය අත්හදා බලන්නග. මීලඟ ලිපි වලින් වැඩිදුර විස්තර කතාකරමු
Read More

Sunday, December 23, 2012

JavaScript - පාඩම 07 (JavaScript Popup Boxes)

JavaScript වලදී අපට වර්ග තුනක popup කවුලු සෑදිය හැකිය. එනම්
  • Alert Box
  • Confirm Box
  • Prompt Box   ය
Alert Box
Alert Box යොදා ගන්නේ භාවිතා කරන්නාට තොරතුරු/පනිවිඩ ලබා දීම සදහායි. එහිදී භාවිතා කරන්නා ok  බොත්තම එබීමෙන් තොරතුර ලැබුනු බව සනාත කල යුතුයි.

පහත කේතය බලන්න
<html>
<head>
<script type="text/javascript">
function disp_alert()
{
alert("I am an alert box!!");
}
</script>
</head>
<body>

<input type="button" onclick="disp_alert()" value="Display alert box"/>
</body>
</html>

මෙහිදී HTML වල  button එකක් සාදා එමගින් html header කොටසේ function එකකට call කර ඇත.

Confirm Box

confirm box යොදා ගනුයේ යම් දෙයක් අනුමත/තහවුරු කර ගැනීමටයි. මේහිදී popup කවුලුවේ okහා cancel ලෙස තේරීම් දෙකක් පවතී. ok තේරූ කල true ලෙසද cancel තේරූ කල false ලෙසද ලැබේ.

පහත කේතය බලන්න
<html>
<head>
<script type="text/javascript">
function disp_confirm()
{
var r=confirm("Press a button");

if (r==true)
  {
  document.write("You pressed OK!");
  }
else
  {
  document.write("You pressed Cancel!");
  }
}
</script>
</head>
<body>

<input type="button" onclick="disp_confirm()" value="Display a confirm box" />

</body>
</html>

මෙහිදී HTML වල  button එකක් සාදා එමගින් html header කොටසේ function එකකට call කර ඇත. එහිදී නැවත ලබාදෙන අගය(return value) මත if  කේතයක් මගින් තේරිමක් කර ඇත. OK(true) බොත්තම තේරූ කල You pressed OK! ලෙසද Cancel(false) බොත්තම තේරූ කල You pressed Cancel! ලෙසද ලබා දේ.

Prompt Box
prompt box භාවිතා කරනුයේ භාවිතා කරන්නාගෙන් විවිධ දත්ත ලබා ගැනීම සදහාය. 
පහත කේතය බලන්න

html>
<head>
<script type="text/javascript">
function disp_prompt()
{
var name=prompt("Please enter your name","Harry Potter");
if (name!=null && name!="")
  {
  document.write("Hello " + name + "! How are you today?");
  }
}
</script>
</head>
<body>

<input type="button" onclick="disp_prompt()" value="Display a prompt box" />

</body>
</html>

මෙහිදී HTML වල  button එකක් සාදා එමගින් html header කොටසේ function එකකට call කර ඇත. මෙම කලුවේ ඇති inpu box එකේ type කර ok කල විට එය name නම් variable එකට ඇතුල් කර ගනී. cancel කල විට ක්‍රියා දාමය නවතී.  parry poter යනු inpu box එකේ defult ඇති වදනයි. එය අපට අවශ්‍ය එකක් හෝ හිස් ව තැබිය හැකිය.

JavaScript ගැන තවත් පාඩමකින් හමුවෙමු.

---------------------------------------------------------------------------
මේ ලිපියෙහි හෝ මෙය සිදු කිරීමේදී යම් ගැටලුවක් ඇත්නම් Comments වල දමන්න.
මා අතින් යම් වරදක් වී ඇත්නම් හෝ යමක් මග හැරී ඇත්නම් ඒවාත් නිවැරදි කිරීම පිනිස Comments වල දමන්න.
Read More

Saturday, December 22, 2012

JavaScript - පාඩම 06 ( Conditional Statements )

If Statement 

if (condition)
{
code to be executed if condition is true
}

condition සත්‍ය නම් පමනක් {} තුල ඇති දෙය සිදු කරන්න

<script type="text/javascript">

var d=new Date();
var time=d.getHours();
 
if (time==11) 
{
document.write("<b>Lunch-time!</b>");
}
</script>


time නමින් variable එකක් සාදා එයට දැන් වේලාව ආදේශ කර ඇත.
if හීදී දැන් වේලාව 11 නම් පමනක් Lunch-time! යනුවෙන් ලබාදේ


If...else statement 

if (condition)
{
code to be executed if condition is true
}
else
{
code to be executed if condition is not true
}

condition සත්‍ය නම් පමනක් {} තුල ඇති දෙය සිදු කරන්න නැත්නම් else පසු{} ඇති දේ කරන්න

<script type="text/javascript">

var d = new Date();
var time = d.getHours();
 
if (time < 10) 
{ document.write("Good morning!");
}
else
{ document.write("Good day!");
}
</script>



time නමින් variable එකක් සාදා එයට දැන් වේලාව ආදේශ කර ඇත.
if හීදී දැන් වේලාව 10 ට අඩු නම් පමනක් Good morning! යනුවෙන්ද නැත්නම් Good day! යනුවෙන්ද ලබාදේ.

if...else if....else statement 

if (condition1)
{
code to be executed if condition1 is true
}
else if (condition2)
{
code to be executed if condition2 is true
}
else
{
code to be executed if condition1 and
condition2 are not true
}

පලමු condition සත්‍ය නම් පමනක් {} දෙවන condition සත්‍ය නම් පමනක් දෙවන {} තුල ඇති දෙය සිදු කරන්න ..... නැත්නම් else පසු{} ඇති දේ කරන්න

<script type="text/javascript">
var d = new Date()
var time = d.getHours()
if (time<10)
{
document.write("<b>Good morning</b>");
}
else if (time>10 && time<16)
     { document.write("<b>Good day</b>");
     }
     else
     { document.write("<b>Hello World!</b>");
     }
</script>


time නමින් variable එකක් සාදා එයට දැන් වේලාව ආදේශ කර ඇත.
if හීදී දැන් වේලාව 10 ට අඩු නම් පමනක් Good morning යනුවෙන්ද, වේලාව 10 ත් 16ත් අතරනම් පමනක් Good day ඒ කිසිවක් සපුරන්නේ නැත්නම් පමනක් Hello World! යනුවෙන්ද ලබාදේ.

switch statement


switch(n)
{
case 1:
  execute code block 1
  break;    
case 2:
  execute code block 2
  break;
default:
  code to be executed if n is
  different from case 1 and 2
}


switch හී n ස්ථානයට ලබාදෙන variable නම ට අදාලව ලැබිය හැකි එක් එක් අගයන් සදහා සිදුකල යුතු දෑ case තුල ලියායි. ඒ කිසිම අගයක් නොලැබුන විටදී default යන්න තුල ලීයා ඇති දේ සිදුවේ.


<script type="text/javascript">

var d=new Date();
theDay=d.getDay();

switch (theDay)
{
case 5:
  document.write("Finally Friday");
  break;
case 6:
  document.write("Super Saturday");
  break;
case 0:
  document.write("Sleepy Sunday");
  break;
default:
  document.write("I'm looking forward to this weekend!");
}
</script>

theDay නමින් variable එකක් සාදා එයට දැන් දිනය ආදේශ කර ඇත.
switch හීදී දැන් දිනය 5 නම් පමනක් Finally Friday යනුවෙන්ද, switch හීදී දැන් දිනය 6 නම් පමනක් Super Saturday යනුවෙන්ද, switch හීදී දැන් දිනය 0 නම් පමනක් Sleepy Sunday යනුවෙන්ද, ඒ කිසිවක් නොවී වෙනත් දිනයක් නම් I'm looking forward to this weekend! යනුවෙන්ද ලබාදේ.


JavaScript ගැන තවත් පාඩමකින් හමුවෙමු.
---------------------------------------------------------------------------
මේ ලිපියෙහි හෝ මෙය සිදු කිරීමේදී යම් ගැටලුවක් ඇත්නම් Comments වල දමන්න.
මා අතින් යම් වරදක් වී ඇත්නම් හෝ යමක් මග හැරී ඇත්නම් ඒවාත් නිවැරදි කිරීම පිනිස Comments වල දමන්න.
Read More

Friday, December 21, 2012

JavaScript - පාඩම 05 (JavaScript Operators 2)

Conditional Operator
මෙහිදී සිදු කරනුයේ යම් අවශ්‍යතාවක් සපුරා ඇත්නම්  පලමු අගයද නැත්නම් දෙවන අගයද විචල්‍ය සදහා ආදේශ කර ගැනීමයි.


Variable_name=(condition)?value1:value2
උදා
Status=(age<18)?"young":"old";
age යව විචල්‍යයේ අගය 18ට අඩු නම් Status විචල්‍ය සදහා young ද වැඩි හෝ සමාන නම් old යන්නද ආදේශ වේ.




JavaScript ගැන තවත් පාඩමකින් හමුවෙමු.
---------------------------------------------------------------------------
මේ ලිපියෙහි හෝ මෙය සිදු කිරීමේදී යම් ගැටලුවක් ඇත්නම් Comments වල දමන්න.
මා අතින් යම් වරදක් වී ඇත්නම් හෝ යමක් මග හැරී ඇත්නම් ඒවාත් නිවැරදි කිරීම පිනිස Comments වල දමන්න.
Read More

Thursday, December 20, 2012

JavaScript - පාඩම 04 (JavaScript Operators 1)

JavaScript Arithmetic Operators / සංඛ්‍යායා ක්‍රියා කාරකය
සංඛ්‍යාමය අගයන්ගේ ගනිතමය ක්‍රියා සදහා
y=5 නම්
ක්‍රියා කාරකය
විස්තරය
උදාහරණය
ප්‍රතිඵලය
+ එකතු කිරීම x = y+2 x=7
- අඩු කිරීම x = y-2 x=3
* ගුන කිරීම x =y* x=10
/ බෙදීම x =y/ x=2.5
% බෙදා ඉතිරිය x = y% x=1
++ වැඩි වීම x = y++ x=6
-- අඩු වීම x = y-- x=4

JavaScript Assignment Operators/ ආදේශන ක්‍රියා කාරක
සංඛ්‍යාමය අගයන්ගේ ගනිතමය ක්‍රියා සදහා යොදා ගන්නා variable වලින් එක් variable එකකට ආදේශ කිරීම සදහා
x=10 ද y=5 ද විට
ක්‍රියා කාරකය
උදාහරණය
සමානයි
ප්‍රතිඵලය
= x=y x=5
+= x+=y x=x+y x=15
-= x-=y x=x-y x=5
*= x*=y x=x*y x=50
/= x/=y x=x/y x=2
%= x%=y x=x%y x=0


අකුරු සමග + ක්‍රියා කාරකය(Operator) යෙදීම
අකුරු, වචන එක් කිරීම සදහා (concatenation)

var one="Muditha";
var two=" Ekanayake";
var three=one+two (Muditha Ekanayake)

Comparison Operators / සංසංදන ක්‍රියා කාරක
variable සංසංදනය කිරීම සදහා. මෙහිදී ලැබෙනුයේ සත්‍ය(true) හෝ අසත්‍ය(false) යන්නයි

x=5 විට
ක්‍රියා කාරකය විස්තරය උදාහරණය
== සමානයි x==8 is false අසත්‍ය
=== සර්ව සමානයි
(අගය හා වර්ගය)
x==5 is true සත්‍ය
 x==="5" is false අසත්‍ය
!= අසමානයි x!=8 is true සත්‍ය
> කුඩයි x>8 is false අසත්‍ය
< විශාලයි x<8 is true සත්‍ය
>= කුඩයි හෝ සමානයි x>=8 is false අසත්‍ය
<= විශාලයි හෝ සමානයි x<=8 is true සත්‍ය


Logical Operators/ තාර්කික ක්‍රියා කාරක
ප්‍රකාෂන කිහියක් එක විට යොදා ගෑනීමට හා සම්පූර්ණ ප්‍රකාශනයක විලොම අගය ගැනීමට
x=6 ද y=3 ද විට
ක්‍රියා කාරකය විස්තරය උදාහරණය
&& and ( සහ) (x < 10 && y > 1) is true
|| or (හෝ ) (x==5 || y==5) is false
! not ( නෑ) !(x==y) is true

JavaScript ගැන තවත් පාඩමකින් හමුවෙමු.
---------------------------------------------------------------------------
මේ ලිපියෙහි හෝ මෙය සිදු කිරීමේදී යම් ගැටලුවක් ඇත්නම් Comments වල දමන්න.
මා අතින් යම් වරදක් වී ඇත්නම් හෝ යමක් මග හැරී ඇත්නම් ඒවාත් නිවැරදි කිරීම පිනිස Comments වල දමන්න.
Read More

7. C හත්වන පාඩම - Arrays in C (දත්ත වැල් )


අද අපි බලමු C හි භාවිතාවන දත්ත වැල් නැතිනම් arrays පිළිබඳව.

අප ඉහත පාඩම්වලදි දැනගත්තු විදියට C වලදි variable එහෙම නැතිනම් විචල්‍ය භාවතිකළා මතක ඇති. හිතන්න එකම data type එකෙන් variable 100ක් විතර හදාගන්න ඕන වුනොත් මොකද වෙන්නෙ. අපි මෙතෙක් දන්නව විදියට නම් එකින් එක variable 100ක් වෙන වෙනම declare කරන්න වෙනවා. නමුත් ඒක ප්‍රායෝගිකව ඉතාම අපහසු කාර්යයක් බව පැහැදිලියි. ඒවගේම ඒවිදියට හාදාගන්න variable භාවිතා කරන්න ගියාමත් කරදරයි. ඉතින් මේකට විසඳුමක් විදියට තමයි අපි arrays භාවිතා කරන්නෙ. මේක දත්ත වැලක්. අපි බලමු කොහොමද array එකක් declare කරන්නෙ කියල.


Syntax of array

datatype arrayName[index]; //Index එක අනිවාර්යෙන්ම integer එකක් විය යුතුයි.

array declare කරගන්නෙත් අපි variable declare කර ගනු ලැබූ ආකාරයටමයි. නමුත් මෙහි ඇති එකම විශේෂත්වය නම් variable name එකට පසු කොටු වරහන් තුල Integer අංකයක් ලබා දීමයි. එමගින් ඉටුවන්නෙ අදාල variable එක array එකක් බවත් එහි එම integer අගය තරම් වන variable වැලක් ඇති බවත්ය.

Example

char name[10];

ඉහත උදාහරණය බලන්න. මෙහි datatype එක char වේ. එනම් character datatype එකෙන් name ලෙස slots (කට්ට) 10 ක් array එකක් මෙලෙස හඳුන්වාදිය හැක.


දත්ත අතුලු කිරීම සහ පිටතට ගැනීම.(Data assigning and reading)

array එකකට දත්ත අතුලත් කරගත හැකි ක්‍රම දෙකක් තිබෙනවා.

  1. හඳුන්වාදෙන අවස්තාවේදිම දත්ත අතුලත් කර ගැනීම.(data initialization)
  2. අවශ්‍යතාවය පරිදි දත්ත අතුලු කර ගැනීම. (data assign)
1. හඳුන්වාදෙන විටම දත්ත අතුලු කරගන්නේ මේ ආකාරයටයි. 

char name[10] = {'a','b','c','d','e','f','g','h','i','j'};

මෙහිදී සඟල වරහන් තුල අගයන් ලබාදීම සිදු කරයි. '' භාවිතා කර ඇත්තේ characters නිසායි.මෙම array හි slots 10ක් පමණක් ඇති නිසා අගයන් දහයක් හෝ ඊට අඩුවෙන් ලබාදිය හැකිය.

2. අවශ්‍යතාවය පරිදි අගය ඇතුලු කරගනීම.


char name[10];

name[0] = 'a';
name[1] = 'b';
name[2] = 'c';
name[3] = 'd';
.
.
.
name[9] = 'j';


array භාවිතයේදී මතක තබාගත යුතු වැදගත්ම කාරණය වන්නෙ අප array එකක් slots 10ක් ඇති ලෙස සදාගත්තොත් එවා index වන්නෙ 0 සිට 9 දක්වා බවයි. හැමවිටම array එකක පළමු index එක 0 වන අතර එතැන් සිට පිළිවෙලින් slots ගැනීම සිදුකළයුතුය.

එලෙසම සමාන්‍ය variable සඳහා අගයන් ඇතුලු කිරීමේදි පිළිපදින ඕනෑම ආකාරයක් මෙහිදි භාවිතා කළ හැක.

දත්ත කියවීමේදීද ඉහත index එක පිළිබඳව සැලකිළිමත් විය යුතු අතර index එක මගින් array එකෙහි slots වෙන වෙනම හඳුනාගැනීම සිදුකරනු ලබයි.

array සමග වැඩකරන විට නිතරම අපට loops භාවිතාකිරීමට සිදුවේ. මන්ද දත්ත වැලක් සමග කටයුතු කරන බැවින් අපට ඒවාට අගයන් ඇතුලු කිරීමත් කියවීමත් loop මගින් පහසුවෙන් ඉටුකරගත හැක. index එක loop එකක් මගින් ගණනය කරවාගෙන එය යොදාගැනීමෙන් array එකෙහි අගයන් යෙදීමත් කියවීමත් කළ හැක. index එක ලෙස අපට අවශ්‍ය නම් integer variable එකක් වුවද භාවිතා කළ හැක.

අපගේ loop සම්බන්ධ පාඩම මගින් ඒ පිළිබඳව අවබෝධයක් ලබාගත හැක. 

නැවත ලිපියකින් හමුවන තුරු ඔබට ජය.
Read More

Wednesday, December 19, 2012

JavaScript - පාඩම 03 (javascript විචල්ල්‍ය (Variables))

javascript වල variables අර්ත දැක්වීම හා අගයන් ආදේශය පිලිබදව මෙම පාඩමෙදී සාකච්චා කර බලමු.

variable අර්ත දැක්වීම

javascript  වල variables  නම් තෝරාගැනීමේදී සම්මතයන් කිහිපකි.
    * variables නම් ආරම්භ විය යුත්තේ අකුරකිනි(ඉක්කමක් හෝ සලකුනක් නොවේ) 
    * variables නම් $ ලකුනින්ද ආරම්භ කල හැකිය.
    * javascript වල variables නම් වලදී සිම්පල් හා කැපිටල් අකුරු වෙනස් අගයන් වේ එනම් y හා Y ලෙස   
       variables දෙකක් නම් කල හැකිය.
පහත නම් කිරීම බලන්න.
var x;
var carname;

එහිදී x හා charname ලෙස variables දෙකක් අර්ත දක්වා ඇත.


variables වලට අගයන් ආදේශය

javascript  වල variables අගයන් ආදේශ කිරීමේදී සංඛ්‍යාමය අගයන් 
var x=5; හෝ   (අගය ඉහලින් අර්ත දක්වා ඇති විට)x=5;
ලෙසද

වචන, අකුරු
var carname="Volvo"; හෝ (අගය ඉහලින් අර්ත දක්වා ඇති විට) carname="Volvo";
ලෙසද ආදේශ කල හැකිය. 


JavaScript ගැන තවත් පාඩමකින් හමුවෙමු.
---------------------------------------------------------------------------
මේ ලිපියෙහි හෝ මෙය සිදු කිරීමේදී යම් ගැටලුවක් ඇත්නම් Comments වල දමන්න.
මා අතින් යම් වරදක් වී ඇත්නම් හෝ යමක් මග හැරී ඇත්නම් ඒවාත් නිවැරදි කිරීම පිනිස Comments වල දමන්න.
Read More

Tuesday, December 18, 2012

JavaScript - පාඩම 02 (javascript Comments)

javascript වල comment දාන ආකාර දෙකක් ඇත. 

පලමු ක්‍රමය තනි පෙල comment කිරීම
//this is one line comment

දෙවනි ක්‍රමය පෙලී කීපයක් comment  කිරීමයි
/* this
is 
the 
multy 
line comment */

මෙම ආකාර දෙකෙන් එකකට කොඩ් comment කල විට එම කෙතය ක්‍රියා නොකරයි. ඒසේම කෙත type කරන අතර තුර ඒ පිලිබදව අදහස් පසුව බලන දවසකට තේරුම් ගැනීමට comment කර තැබිය හැකිය.

JavaScript ගැන තවත් පාඩමකින් හමුවෙමු.
---------------------------------------------------------------------------
මේ ලිපියෙහි හෝ මෙය සිදු කිරීමේදී යම් ගැටලුවක් ඇත්නම් Comments වල දමන්න.
මා අතින් යම් වරදක් වී ඇත්නම් හෝ යමක් මග හැරී ඇත්නම් ඒවාත් නිවැරදි කිරීම පිනිස Comments වල දමන්න.
Read More

Monday, December 17, 2012

JavaScript - පාඩම 01 (ආරම්භය - Helo Word)

පලමුවෙන් ම JavaScript ඉගෙන ගැනීමට පෙර HTML හා CSS ගැන මූලික නිරවුල් අවබොධයක් තිබිය යුතුය. HTML හා CSS ඉගෙන ගැනීමට අවශ්‍ය නම් මේ blog එකේම එම පාඩම් පවතින අතර එවා බලා ගැටලු ඇතිනම් comment මගින් ඉදිරිපත් කර නිරවුල් කරගන්න.

JavaScript  කේත type සදහා note pad භාවිතා කල හැකිය. ඒවා සාමාන්‍යයේන් html තුලම අත්තර් ගත කරන බැවින් html කේතනය සදහා භාවිතා කරන text editer ම භාවිතා කල හැකිය. මම මේ සදහා note pad++  භාවිතා කරන්නෙමි. 

JavaScript කේත html ගොනුවතට ඇතුල් කල හැකි ක්‍රම තුනකි

html ගොනුවේ header එක තුල
html ගොනුවේ body එක තුල
.js ගොනුවක් ලෙස

නමුත් මම මේ ක්‍රම තුන දැන් සාකච්චා කිරීමට බලාපොරෝත්තු නොවෙම්. ඒ ගැන පසු පාඩමක්න් සාකච්චා කරමු. මුලින් අපි html ගොනුවකම අන්තර් ගත කරන අයුරින් JavaScript ගැන ඉගෙන ගනිමු. මෙහිදී කේතයන් සාමාන්‍ය html කේතයන් save කරන අන්දමටම save කර එම ගොනුව web browerයක් මගින් විවෘත්ත කර ප්‍රතිඵලය බල්න්න.


දැන් පහත කේතය බලන්න



javascript කේත type කරනුයේ <script typr="text/javascript">හා</script> යන ටැග් යුගල තුලයි. එයින් පිටත javascript කෙටස් අත්තර්ගත කලද ක්‍රියා නොකරයි. එම කේතයයේ ප්‍රතිඵලය පහතින් වේ එනම් document.write("") මගින් " " තුල ඇකි අකුරු එලෙසින්ම ඉදිරිපත් කෙරේ.


JavaScript ගැන තවත් පාඩමකින් හමුවෙමු.
---------------------------------------------------------------------------
මේ ලිපියෙහි හෝ මෙය සිදු කිරීමේදී යම් ගැටලුවක් ඇත්නම් Comments වල දමන්න.
මා අතින් යම් වරදක් වී ඇත්නම් හෝ යමක් මග හැරී ඇත්නම් ඒවාත් නිවැරදි කිරීම පිනිස Comments වල දමන්න.
Read More

Tuesday, December 4, 2012

Include ( PHP සිංහලෙන් - 24 )

මෙම විධානය භාවිතා කර එක් වෙබ් පිටුවක් තුල තවත් ගොනුවක් (වෙබ් පිටුවක්) අන්තර්ගත කල හැකිය.
පහත කේතය බලන්න.



මෙහිදීද මම වෙබ් පිටු දෙකක් භාවිතා කර ඇත. එකක් මෙම කේතය සහිත වෙබ් පිටුව වන අතර අනෙක content.php ලෙස ඇති වෙබ් පිටුවකි. එහිදී content.php පිටුවේ මූලික කේත තිබීම අවශ්‍ය නොවේ. පහත කේතය බලන්න (content.php) 



දැන් පලමු වෙබ් පිටුවට පිවිසුන විට දෙවන වෙබ් පිටුවේ අන්තර්ගතය දර්ශනය වේ. මෙහි ඇති ප්‍රයෝජනයක් වනුයේ වෙබ් අඩවියක පිටු කිහිපයක එකම අන්තරගතය ඇති ස්ථාන සදහා භාවිතා කල හැකි වීමයි. තවත් ප්‍රයෝජනයක් ලෙස එකම php function විවිධ පිටු සඳහා යොදා ගැනීමට භාවිතා කල හැකිය. Include යන්න වෙනුවට භාවිතා කල හැකි තවත් වදනකි require. නමුත් Include වල මෙන් නොව දෙවන ගොනුව ලබාගැනීමට නොමැතිනම් require වලදී error පනිවුඩයක් ඉදිරිපත් කර වැඩසටහන නතරවේ.
---------------------------------------------------------------------------
මේ ලිපියෙහි හෝ මෙය සිදු කිරීමේදී යම් ගැටලුවක් ඇත්නම් Comments වල දමන්න.
මා අතින් යම් වරදක් වී ඇත්නම් හෝ යමක් මග හැරී ඇත්නම් ඒවාත් නිවැරදි කිරීම පිනිස Comments වල දමන්න.
Read More

Sunday, December 2, 2012

Header (redirect pages) ( PHP සිංහලෙන් - 23 )

PHP ස්ක්‍රිප්ට් මගින් වෙබ් පිටු පරිශීලකයින් වෙනත් පිටුවනකට හරවා යෑවීමට අවශ්‍ය වන අවස්තාවලදී මේ header භාවිතා කල හැකිය.

Header වල ව්‍යුහය
Header(header information);

සාමාන්‍යයෙන් Header ඇතුලත් කරනුයේ HTML ගොනුවේ මුලින්මයි(එනම් <html> ටැගයටත් කලින් එකදු හිස්තැනක් වත් නොතබමිනි.)

පහත කේතය බලන්න


එය මගේ wamp saver හී www ගොනුව තුල abc.php ලෙස save කර ඇත. Header මගින් මගේ wamp saver හී www ගොනුව තුල ඇති තුලම ඇති test.html වෙත පරිශීලකයා හරවා යවනු ලැබේ. exit; කේතය මගින් පහලින් තවත් Header හො කේත වලට යාම නවතයි.

Header වල ගොඩක් වැඩ තියෙනවා. පසුව පාඩම් වලින් ඒ ගැන සාකච්චා කරමු.

---------------------------------------------------------------------------
මේ ලිපියෙහි හෝ මෙය සිදු කිරීමේදී යම් ගැටලුවක් ඇත්නම් Comments වල දමන්න.
මා අතින් යම් වරදක් වී ඇත්නම් හෝ යමක් මග හැරී ඇත්නම් ඒවාත් නිවැරදි කිරීම පිනිස Comments වල දමන්න.
Read More

අදුරට එලියක්. Flash Light App - 2


    
     

     Android - App


        අදුරට එලියක්.

   Flash Light App - 2

         
        

මේ ලිපියෙන් අපි බලමු,  Android Emulator එකක් configure කරගෙන වැරදි හදාගෙන, app run කරන්නෙ කොහොමද කියල.


          


            ඔයාල  code එක  complete කරල,  Run කරන්න ගියා නම්, ඔයාලට පහත ආකාරයේ  window එකක්  pop-up වේවි. ඒකට හේතුව තමයි, තාමත් ඔයාල  Android Emulator එක configure කරගෙන නැති වීම.  


                     

              Android Emulator එක කියලා කියන්නේ අපිට Android SDK එකත් එක්කම හම්බවෙන දෙයක්. මේ Emulator එක තමයි, අපි ලියන ඕනිම  App එකක්  test කරලා බලන්න අපිට උදවු වෙන්නේ. ඔයාලට ඔයාල Android SDK එකට install කරගෙන තියෙන ඕනිම Android version එකක් සඳහාම   Emulator එකක්  configure කරගන්න පුළුවන්.  ඇත්තෙන්ම  Emulator එක කියන්නේ  Android OS එක install කරලා තියෙන phone එකක්. ඔයාලට ඔයාල  configure කරගෙන තියෙන  Emulator ඕනිම  App එකක්  install කරගන්න,  Emulators දෙකක් අතර  message යවන්න  call ගන්න වගේ ගොඩක් දේවල් කරන්න පුළුවන්. 

                ඉහත රූපයේ දැක්වෙන විදියට, ඔයාලගෙ Emulator එක සඳහා නමක්  Name කියන  text_box ට දෙන්න,  ඒවගේම  Skin කියන combo_box එක මඟින් ඔයාලගෙ Emulator එකේ  screen size එක නැත්තම් screen resolution size එක දෙන්න.  SDCard කියන කොටස මඟින් ඔයාලට ඕනි නම්, external virtual memory එකක්, ඔයාලගෙ  Emulator එකට දෙන්න පුළුවන්. දැන්  Ok button එක  click කරලා Emulator එක හදාගන්න පුළුවන්. ඒ සකස් වුනු  Emulator එකේ ඔයාලගෙ App එක දැන් run වේවි.

ඔයාලට තවත් විදියකට Android Emulator එක configure කරගන්න පුළුවන්. 

Tools --> Android --> AVD Manager

              දැන් ඔයාලට ලැබෙන pop-up එකේ  New කියන  button එක  click කලාම පහත ඇති ආකාරයේ  pop-up එකක් දකින්න පුළුවන් වේවි. එහිද ඔයාලගෙ  Emulator නමක් දෙන්න. කලින් වතාවේ නොතිබුනු දෙයක් දැන් ඔයාලට Enable වෙලා ඇති. ඒ තමයි, Target කියන  option එක  combo_box ක් විදියට දකින්න තියෙනවා. ඒ හරහා ඔයාලට පුළුවන්, ඔයාලගෙ  Emulator එකේ තියෙන්න ඕනි  Android version එක ලබා දෙන්න. ඔයාලට ඕනි නම් අලුත්ම  Android version එක අත් විදින්න, ලොකු මුදලක් වියදම් කරලා, අලුත්ම Android phone එකක් ගන්න අවශ්‍ය නෑ. ඔයාලට කරන්න තියෙන්නෙ, ඔයාලගෙ  Android SDK එකට, අලුත්ම Android version එක install කරගන්න, දැන් ඒ Android version එකෙන්  Emulator එකක්  configure කරගන්න. ඔයාලටත් ඒක ලේසියෙන්ම අත්විදින්න පුළුවන්. 



   දැන් ඔයාලට පුළුවන්, ඔයාලගෙ Android App එක run කරන්න. මම කියපු පියවර හරියටම කලා නම්, පහත ආකාරයට, ඔයාලගෙ App එක Emulator එක උඩ වැඩ කරන්න ඕනි.



App එක වැඩ කරනවා නේ..., දැන් බලන්න ඔයාල දාපු, button එක click කරලා, දැන් මම හරි නම්  Error එකක් ඒවි මෙන්න මේ වගේ.




මේක වෙන්නේ, අපි ඉතාම වැදගත් පියවරක් අමතක කරපු නිසා. ඒ තමයි AndroidManifest.xml කියන  file එකේ සිදුකල යුතු  configure එක කරපු නැති එක. ඊට කලින්, බලන්න, අපේ  Emulator එකේ අපිට පෙන්නලා තියෙන  Error එක. 

   ඒක කියෙවුවා කියලා, අපිට ලොකු දෙයක් තේරුම් ගන්න අමරුයි නේද? අපිට අපේ  App එක run වෙනකොට,  සාමාන්‍ය  java code එකක්  run වෙනකොට  debug log බලනවා වගේ,  debug log එකක් බලා ගන්න පුළුවන් උනා නම් ලේසී නේද? අපි 

ඒක කොහොමද Intellij IDEA වල කරන්නේ. පහත රූපය බලන්නකො.













ඉහත රූපයේ පෙන්නලා තියෙන  Android කියන tag එක උඩ  App run කලාට පස්සෙ  click කරන්න එතකොට පහත රූපයේ දක්වලා තියෙනව වගේ log බලන්න පුළුවන් වේවි. ඔයාල තෝරලා තියෙන  Log level එක  verbose නම්,  
      
       ඒකෙ  App එක run වෙන එකට අදාල සියලුම දේවල්, Errors ආව වෙලාවට තියෙන  Exceptions වගේ හැම දෙයක්ම බලාගන්න පුළුවන්.













ඉතින් එහෙනම්, අපිට දැන් බලමු, අපිට කලින් ආව Error එක මොකද්ද කියලා. ඔයාල බලුවා නම්, පහත ආකාරයේ Exception එකක් log එකේ බලා ගන්න පුළුවන් වේවි.






















මේකට හේතුව තමයි, මම කලින් කීව වගේ AndroidManifest.xml කියන  file එක හරි ආකාරයට configure කරලා නොතිබීම. මම නිවැරදි කරපු  AndroidManifest.xml එක පහත, දක්වලා තියෙනවා, ඒක හොඳින් බලන්න.

--- > AndroidManifest.xml




මේ code බලන්න 15 වෙනි පේලිය. ඒක ඔයාලගෙ AndroidManifest.xml එකේ නැතිව ඇති. ඇත්තටම, මේ AndroidManifest තමයි, අපේ App එකට අදාල සියලුම විස්තර, නැත්නම් configurations තියෙන්නේ. 

         ඒක නිසා අපි අලුතින් interface එකක් එකතු කරලා, එයාට java Activity class එකක් දැම්මොත්, ඒ ගැන මේ  AndroidManifest එකට කියන්න ඕනි. නැත්තම්  App එක වැඩ කරනකොට Errors එනවා. 

         AndroidManifest එක පාවිච්චි කරන තවත් අවස්තා ගැන අපි ඉස්සරට කතා කරමු. මම ඒව ගැන මේ වගේම උදහරන එක්ක කතා කරන්නම්. 

        එතකොට දැන් අපි දැන ගත්ත දේ තමයි, අපි project එකට එකතු කරන හැම java Activity class එකක්ම AndroidManifest එකේ, <activity> කියන tag එක යටතේ සඳහන් කරන්න ඕනෙ කියන එක.

දැන් App එක run කරලා බලන්න.

අපි මීලඟ ලිපියෙන්, code එක ගැන විස්තර ඇතුව කතා කරමු.

ඔයාලට මේ කරපු දේ ටික ගැන ප්‍රශ්න තියෙනව නම්  comment කරන්න නැති නම්  mail කරන්න kavi707@gmail.com


Read More