شرح كيفية استخدام الlist في اكثر من مكان داخل تطبيقك | singleton arrayList
في كثير من الاحيان عند تطوير التطبيقات نحاول الى استخدام الlist في اكثر من مكان في التطبيق ولهذا سوف نشرح لكم في فيديو اليوم كيف تقوم بجعل الarrayList بشكل singleton لكي تستطيع الوصول لها من اي مكان في التطبيق وهذا الامر يوفر عليك الكثير من الوقت وايضا ينضم الكود الخاص بك بشكل اكثر احترافيه ويحسن من تعاملك مع الكود في المستقبل ويفضل وضع اي list تستخدمها في تطبيقك في الclass الذي سوف نقوم بعمله اليوم لكي تستطيع الوصول اليها واسخدامها بشكل افضل .
Java هي لغة برمجة أنشأها James Gosling في معامل Sun Microsystems في عام 1992 لاستخدامها كعقل تفكير لأجهزة التطبيقات الذكية مثل التلفزيون التفاعلي. أثناء عمله في مختبرات Sun Microsystems ، اعتاد على مراقبة هذه الشجرة من نافذة مكتبه. بعد ذلك ، تم تغيير الاسم إلى Java. هذا اسم غير شائع للغة البرمجة. إنها ليست الأحرف الأولى لكلمات جملة معينة أو تعبير لها معنى محدد ، بل هو اسم ابتكره مبتكرو اللغة للتنافس مع الأسماء الأخرى. يشار إلى أي مجموعة من الأوامر والتعليمات يتم إرسالها إلى الكمبيوتر كلغة برمجة.
إنشاء class يحمل الlist التي تحتاج لاستخدامها اكثر من مره في تطبيقك
اول خطوة وهي انشاء class باسم الData بداخل سوف نقوم بعمل مجموعة methode عباره عن الlists التي نعمل عليها كما هو موضح انه لدينا list تتكون من string .
DataProvider.java
public class DataProvider {
public ArrayList<DataImages> getImage(Context myContext) {
ArrayList<DataImages> list = new ArrayList<>();
list.add(new DataImages("ahmed"));
list.add(new DataImages("moahmed"));
list.add(new DataImages("ehab"));
list.add(new DataImages("islam"));
return list;
}
}
كيفية استدعاء الlist داخل الactivity
بعد تنفيذ الكود السابق ياتي الان دور طريقة الاستدعاء وهي بسيطة جدا سوف تقوم بعمل متغير باسم الlist وبعدها سوف تقوم بتعريف هذا المتغير عن طريق عمل new من اسم الclass الذي يحمل الlist وبعدها تختار من داخله الlist التي تريد الوصول اليها وتضع لها الcontext وبهذا تكون انتهيت من هذه المشكلة .
MainActivity.java
public class ImagesActivity extends AppCompatActivity {
ActivityImagesBinding binding;
ArrayList<DataImages> list;
AdapterImages adapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
binding = DataBindingUtil.setContentView(this, R.layout.activity_images);
list = new DataProvider().getImage(ImagesActivity.this);
}
فيديو الشرح
لمزيد من المقالات
- طريقة ازالة عنصر من العناصر عن طريق السحب بالاندرويد ستوديو
- شرح كيفية تغير ايقونة التطبيق في الاندرويد ستوديو
- منع لقطة الشاشة وتسجيل الفيديو من تطبيقك في الاندرويد ستوديو
- شرح تغيير النص الى رقم في الاندرويد ستوديو | String to integer android java
- طريقة عمل كارد فيو CardView داخل التطبيق في الاندرويد ستوديو