اے پی پی کی پہلی ترمیم - واقعات اور ڈیٹا کی گرفتاری۔ - ٹیکنالوجی
مواد پر جائیں۔

اے پی پی کی پہلی ترمیم - واقعات اور ڈیٹا کی گرفتاری۔

اشتہارات

اینڈرائیڈ پر پہلا پروجیکٹ بنانے کے بارے میں اندراج میں، پھر ہم نے دیکھا کہ اپنی بنیادی ایپلیکیشن کیسے بنائی جاتی ہے، ہم نے پروجیکٹ کے ڈھانچے اور مختلف تصورات جیسے SDK، Manifest اور سرگرمیوں اور ان کے لائف سائیکل کا جائزہ لیا، اب ہم موجودہ پروجیکٹ میں ترمیم کرتے رہیں گے۔ ایپلی کیشنز کی تخلیق کو گہرا کرنے کے مقصد کے ساتھ۔

 

جیسا کہ ذکر کیا گیا ہے، ہم اس اندراج میں بنائی گئی ایپلیکیشن میں ترمیم کریں گے جہاں ہم نے پہلا اینڈرائیڈ پروجیکٹ بنایا تھا، ہم اس اسکرین پر وہیں رہیں گے۔

وہاں ہم دیکھ سکتے ہیں کہ پہلے سے طے شدہ ایپلیکیشن اسپلٹ ویو سے ٹیکسٹ ویو کا ایک جزو بناتی ہے جس میں متن "ہیلو ورلڈ" ہوتا ہے۔ (اگر اس وقت آپ کو ایپ بنانے کا طریقہ معلوم نہیں ہے تو، میں تجویز کرتا ہوں کہ آپ اوپر بیان کردہ اندراج کا جائزہ لیں۔)

یہاں ہونے کے بعد، ہم اس منظر میں نئے اجزاء شامل کرکے اس میں ترمیم کریں گے، اگر ہم پھر ڈرائنگ ویو پر جائیں تو ہم اسکرین کو اپنی پسند کے مطابق تبدیل کرسکتے ہیں، اس صورت میں ہم درج ذیل انٹرفیس بنائیں گے۔

جیسا کہ ہم دیکھ سکتے ہیں، ہم نے ایک PlainText جزو شامل کیا ہے جو درحقیقت کسی ترمیمی فیلڈ سے مطابقت رکھتا ہے یا اس میں سادہ متن، پاس ورڈ، ٹیلی فون، میل جیسی خصوصیات ہوسکتی ہیں، اسی طرح وضاحت شدہ لے آؤٹ ہمیں اس کے سائز میں ترمیم کرنے کی اجازت دیتا ہے۔ اجزاء اور ایک رشتہ دار پوزیشن تفویض کریں، اس صورت میں ٹیکسٹ فیلڈ میں ٹائٹل کے ٹیکسٹ ویو سے متعلق پوزیشن ہوتی ہے۔

اگر ہم اسپلٹ ویو پر جائیں تو ہمیں جنریٹڈ ایکس ایم ایل کوڈ نظر آئے گا اور یہاں سے ہم پراپرٹیز کو مینوئل طور پر تبدیل کر سکتے ہیں، اس صورت میں ٹائٹل میں ایک رنگ شامل کیا گیا ہے اور اس کا سائز 25sp، نوٹ کریں کہ ہر جزو کی ایک id پراپرٹی ہوتی ہے۔ ، نیز اسکرین پر اجزاء کی پوزیشننگ کو کنٹرول کرنے کے لئے خصوصیات۔

 

ہمیں دوسرے اجزاء ملتے ہیں جیسے ٹپ جو کہ a سے مماثل ہے۔ پلیس ہولڈر جو فیلڈ کے خالی ہونے پر ظاہر ہوتا ہے، اجزاء کو اسٹائل کرنے کے لیے اسی طرح دیگر خصوصیات کو شامل کیا جا سکتا ہے۔

 

اب ایک جزو کی طرح جس میں آئی ڈی پراپرٹی بھی ہے جو ٹیکسٹ فیلڈ کے جزو سے متعلق ہے، اس صورت میں ہم شناخت کنندہ میں ترمیم کرتے ہیں۔

درخواست کی منطق۔

 

منطقی اور معلوماتی پروسیسنگ انجام دینے کے لیے، ہم MainActivity.kt کلاس میں جاتے ہیں، وہاں سے ہم findViewById() طریقہ استعمال کرتے ہوئے ان کی id کے ذریعے گرافک اجزاء حاصل کرتے ہیں۔

 

ہم بٹن کے کلک ایونٹ کو شامل کرتے ہیں اور ایک فنکشن بناتے ہیں جسے onClick() کہتے ہیں (کسی بھی طرح سے بلایا جا سکتا ہے)

 

اس فنکشن میں ٹیکسٹ فیلڈ کی ویلیو کو پکڑنے کے لیے منطق کو شامل کیا جاتا ہے، جس کا حوالہ بٹن کی طرح دیا جاتا ہے، لیکن اس صورت میں EditText قسم کا ایک جزو بنانا جو ٹیکسٹ فیلڈ کی آئی ڈی کا حوالہ دیتا ہے۔

 

اس کے بعد، فیلڈ ویلیو حاصل کی جاتی ہے اور اسٹرنگ متغیر میں شامل کی جاتی ہے جسے پھر ٹوسٹ قسم کے جزو میں پیش کیا جاتا ہے جو اسکرین پر ایک عارضی پیغام کو ظاہر کرنے کی اجازت دیتا ہے۔

 

جب ہم ایپلیکیشن چلاتے ہیں، ایمولیٹر شروع ہو جاتا ہے اور ہم صارف کا نام شامل کر کے اور "انٹر" بٹن دبا کر سسٹم کی جانچ کر سکتے ہیں، ہم دیکھتے ہیں کہ ٹوسٹ کیسے ظاہر ہوتا ہے، جو چند سیکنڈ تک رہتا ہے۔


اس کے بعد، ہم ٹیکسٹ کے بغیر ایک اور TextView جزو شامل کرکے اسکرین میں ترمیم کرتے ہیں، جو درج کردہ نام کے بارے میں معلومات کو ظاہر کرنے کے لیے کام کرے گا، لیکن اب براہ راست اسکرین پر۔

اس منطق کو انجام دینے کے لیے، ہم MainActivity.kt کلاس میں واپس جاتے ہیں اور فنکشن میں ہم تفویض کردہ آئی ڈی کے ساتھ EditText جزو کا حوالہ دیتے ہیں اور پھر وہ پیغام بھیجتے ہیں جسے ہم ظاہر کرنا چاہتے ہیں۔

 

بعد میں ہم دوبارہ ایپلیکیشن لانچ کرتے ہیں اور ہمارے پاس درج ذیل نتیجہ ہے۔


 

ڈیٹا کیپچر کرنے کا ایک اور متبادل یہ ہے کہ اجزاء کو عالمی سطح پر اعلان کیا جائے، اس طرح ہر فنکشن میں ان کا اعلان کرنے سے گریز کیا جائے:


استعمال کرنے کے لئے اہم !! آپ کو کالعدم حوالہ جات سے روکنے کے لیے۔

 

مشاہدہ:

 

لائنز 11 اور 12 میں nullsafety استعمال کی گئی ہے، یہ کوٹلن کی ایک خصوصیت ہے جو آپ کو ایپلی کیشن کے اندر null ویلیوز کو کنٹرول کرنے کی اجازت دیتی ہے، اسے مقبول NullPointerException کو لوڈ کرنے سے روکتی ہے، ہم null Values کو براہ راست تفویض نہیں کر سکتے، لیکن اس طرح جب ہم اشارہ کرتے ہیں۔ متن میں ترمیم کریں؟ ہم کمپائلر کو بتا رہے ہیں کہ اس فیلڈ میں null حوالہ ہو سکتا ہے اور اس پر کارروائی کی اجازت دی جا سکتی ہے۔

 

لائن 26 اور 27 میں استعمال ہوتا ہے!! کمپائلر کو یہ بتانے کے لیے کہ وہ چیک نہ کرے کہ آیا ویلیو null ہے اور اس لیے وہ بغیر کسی پریشانی کے کمپائل کر سکتا ہے، لیکن اگر یہ null ہے تو کنسول میں رعایت کو پھینک دیں اگر ہمیں معلوم ہو کہ null ویلیو آ سکتی ہے اور ہم پھر بھی پروسیس کرنا چاہتے ہیں۔

 

ایک اور تجویز کردہ متبادل محفوظ کال کرنا ہے، لہذا جب آپ آبجیکٹ کو کال کرنے کی کوشش کریں گے، اگر یہ کالعدم ہے، تو رعایت نہیں دی جائے گی، لیکن اس عمل کو ختم کیے بغیر null ویلیو کو محفوظ کیا جائے گا، اس لیے متغیر کو nullable ہونا چاہیے۔ اسے صحیح طریقے سے مرتب کیا جائے۔

 

اور بس، اس کے ساتھ ہی ہمارے پاس ڈیٹا کیپچر اور بٹن ایونٹس کے ساتھ ہماری پہلی فعال ایپلی کیشن ہے۔

 

اس میں آپ کی دلچسپی بھی ہو سکتی ہے۔





کیا آپ اس اندراج کے بارے میں کچھ شامل کرنا یا تبصرہ کرنا چاہتے ہیں؟ کرنے کے لئے آزاد محسوس کریں….اور اگر آپ کو یہ پسند آیا… میں آپ کو اشتراک کرنے کی دعوت دیتا ہوں۔ Y اس طرح کی مزید پوسٹس کے بارے میں جاننے کے لیے "اس سائٹ میں شامل ہوں" بٹن استعمال کرکے سائن اپ کریں۔ 😉