برمجة واجهة المستخدم إطارات الواجهة برمجة الأندرويد Android UI Layouts#

برمجة واجهة المستخدم إطارات الواجهة برمجة الأندرويد

 Android UI Layouts#

برمجة واجهة المستخدم إطارات الواجهة برمجة الأندرويد Android UI Layouts#

العنصر الأساسي الأساسي لواجهة المستخدم هو كائن عرض Layout يتم إنشاؤه من فئة العرض Layout ويشغل مساحة مستطيلة على الشاشة ويكون مسؤولاً عن الرسم ومعالجة الأحداث.  طريقة العرض layout هي الفئة الأساسية لعناصر واجهة المستخدم ، والتي تُستخدم لإنشاء مكونات واجهة المستخدم التفاعلية مثل الأزرار وحقول النص ، إلخ.

 يعد ViewGroup فئة فرعية من طريقة العرض ويوفر حاوية غير مرئية تحتوي على طرق عرض أخرى أو مجموعات عرض أخرى وتعرف خصائص التخطيط الخاصة بها.

 في المستوى الثالث ، لدينا تخطيطات مختلفة وهي فئات فرعية من فئة ViewGroup ويحدد التصميم النموذجي البنية المرئية لواجهة مستخدم Android ويمكن إنشاؤه إما في وقت التشغيل باستخدام كائنات View / ViewGroup أو يمكنك التصريح بالتخطيط باستخدام ملف XML بسيط main_layout  .xml الموجود في مجلد res / layout في مشروعك.


تخطيط params
 هذا البرنامج التعليمي هو أكثر حول إنشاء واجهة المستخدم الرسومية الخاصة بك على أساس تخطيطات محددة في ملف XML.  قد يحتوي التخطيط على أي نوع من عناصر واجهة المستخدم مثل الأزرار والعلامات ومربعات النص وما إلى ذلك.  فيما يلي مثال بسيط لملف XML الذي يحتوي على LinearLayout -

xml version="1.0" encoding="utf-8"?>
 xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="fill_parent"
   android:layout_height="fill_parent"
   android:orientation="vertical" >
   
    android:id="@+id/text"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="This is a TextView" />
      
   

بمجرد إنشاء التصميم الخاص بك ، يمكنك تحميل مورد التخطيط من رمز التطبيق الخاص بك ، في تطبيق رد الاتصال Activity.onCreate () كما هو موضح أدناه -
public void onCreate(Bundle savedInstanceState) {
   super.onCreate(savedInstanceState);
   setContentView(R.layout.activity_main);
}

 انواع الرسومات التي يقدمها الأندرويد Android Layout Types

هناك عدد من التنسيقات التي يوفرها Android والتي ستستخدمها في جميع تطبيقات Android تقريبًا لتوفير مظهر وشكل مختلفين.
التسلسلالوصف والرسم العرض
1Linear Layout
LinearLayout هي مجموعة عرض تقوم بمحاذاة جميع الرسومات الابن  في اتجاه واحد ، عموديًا أو أفقيًا.
2Relative Layout
RelativeLayout هي مجموعة عرض تعرض طرق عرض فرعية في المواضع النسبية.
3Table Layout
TableLayout هو طريقة عرض تجمع طرق العرض في صفوف وأعمدة.
4Absolute Layout
يتيح لك AbsoluteLayout تحديد الموقع الدقيق لأطفاله.
5Frame Layout
FrameLayout هو عنصر نائب على الشاشة يمكنك استخدامه لعرض طريقة عرض واحدة.
6List View
ListView هي مجموعة عرض تعرض قائمة بالعناصر القابلة للتمرير.
7Grid View
GridView هو ViewGroup يعرض العناصر في شبكة ثنائية الأبعاد قابلة للتمرير.

صفات العرض الرسومي Layout Attributes

يحتوي كل تخطيط على مجموعة من السمات التي تحدد الخصائص المرئية لهذا التصميم.  هناك عدد قليل من السمات الشائعة بين جميع المخططات والسمات الأخرى الخاصة بهذا التصميم.  فيما يلي سمات شائعة وسيتم تطبيقها على جميع المخططات:
المسلسلالوصف والصفات
1
android:id
.هذا هو المعرف الذي يحدد طريقة العرض بشكل فريد
2
android:layout_width
هذا هو عرض التخطيط.
3
android:layout_height
هذا هو ذروة التصميم
4
android:layout_marginTop
هذه هي المساحة الإضافية في الجانب العلوي من التصميم.
5
android:layout_marginBottom
هذه هي المساحة الإضافية في الجزء السفلي من التصميم.
6
android:layout_marginLeft
هذه هي المساحة الإضافية على الجانب الأيسر من التخطيط.
7
android:layout_marginRight
هذه هي المساحة الإضافية على الجانب الأيمن من التخطيط.
8
android:layout_gravity
يحدد هذا كيفية وضع مشاهدات العرض الرسم الفرعي 
9
android:layout_weight
يحدد هذا مقدار المساحة الإضافية في التخطيط التي يجب تخصيصها للعرض.
10
android:layout_x
يحدد هذا إحداثي x للتخطيط.
11
android:layout_y
يحدد هذا التنسيق y للتخطيط.
12
android:layout_width
هذا هو عرض التخطيط.
13
android:layout_width
هذا هو عرض التخطيط.
14
android:paddingLeft
هذا هو الحشو الحاشية  اليسرى الذي يعبيء المخطط  .
15
android:paddingRight
هذا هو الحشو الصحيح يمليء المخطط.
16
android:paddingTop
هذا هو الحشو العلوي 
17
android:paddingBottom
الحشو السفلي الحاشية المخطط layout

هنا العرض والارتفاع هما أبعاد التخطيط / العرض التي يمكن تحديدها من حيث dp (البكسلات المستقلة عن الكثافة) ، sp (بكسلات مستقلة عن القياس) ، pt (النقاط التي تبلغ 1/72 من البوصة) ، بكسل (  بكسل) ، مم (ملليمتر) وأخيرا في (بوصة).

 يمكنك تحديد العرض والارتفاع باستخدام قياسات دقيقة ولكن في أكثر الأحيان ، ستستخدم أحد هذه الثوابت لضبط العرض أو الارتفاع -

 android: layout_width = wrap_content يروي طريقة عرضك لتغيير حجمها للأبعاد المطلوبة في محتواها.

 android: layout_width = fill_parent يُخبر عرضك أن يصبح بحجم عرضه الأصلي.

 تلعب سمة Gravity دورًا مهمًا في تحديد موضع كائن العرض ويمكن أن يستغرق واحدًا أو أكثر (مفصولة بـ '|') من القيم الثابتة التالية.
الثابتالقيمة الوصف
top0x30يدفع الكائن إلى أعلى الحاوية الخاصة به ، دون تغيير حجمه.
bottom0x50يدفع الكائن إلى أسفل الحاوية ، دون تغيير حجمها.
left0x03يدفع الكائن إلى يسار الحاوية ، دون تغيير حجمها.
right0x05ادفع الكائن إلى يمين الحاوية ، دون تغيير حجمها.
center_vertical0x10ضع الكائن في المركز الرأسي للحاوية ، دون تغيير حجمه.
fill_vertical0x70ينمو الحجم الرأسي للكائن إذا لزم الأمر لذلك يملأ الحاوية الخاصة به بالكامل.
center_horizontal0x01ضع الكائن في المركز الأفقي للحاوية ، دون تغيير حجمه.
fill_horizontal0x07ينمو الحجم الأفقي للكائن إذا لزم الأمر لذلك يملأ الحاوية الخاصة به تمامًا.
center0x11ضع الكائن في وسط الحاوية في كل من المحور الرأسي والأفقي ، دون تغيير حجمه.
fill0x77ينمو الحجم الأفقي والرأسي للكائن إذا لزم الأمر حتى يملأ الحاوية بالكامل.
clip_vertical0x80خيار إضافي يمكن ضبطه بحيث يكون الحواف العلوية و / أو السفلية للطفل مثبتة على حدود الحاوية.  سيعتمد المقطع على الجاذبية العمودية: ستقطع الجاذبية العلوية الحافة السفلية ، والجاذبية السفلية ستقطع الحافة العلوية ، ولن تقطع الحواف كليهما.
clip_horizontal0x08
خيار إضافي يمكن ضبطه بحيث يكون حواف الكائن الابن اليسرى و / أو اليمنى مقصوصة على حدود الحاوية.  سيعتمد المقطع على الجاذبية الأفقية: الجاذبية اليسرى ستقطع الحافة اليمنى ، والجاذبية اليمنى ستقطع الحافة اليسرى ، ولن تقطع الحواف كليهما.
start0x00800003يدفع الكائن إلى بداية الحاوية الخاصة به ، دون تغيير حجمه.
end0x00800005يدفع الكائن إلى نهاية الحاوية الخاصة به ، دون تغيير حجمه.

 تعريف العرض View Identification

قد يكون لعنصر العرض معرّف فريد تم تعيينه له والذي سيعرف طريقة العرض بشكل فريد داخل الشجرة.  بناء الجملة لمعرف ، داخل علامة XML -
android:id="@+id/my_button"


فيما يلي وصف موجز لعلامات @ و + -
 يشير الرمز at (@) في بداية السلسلة إلى أنه يجب على محلل XML تحليل بقية سلسلة المعرف وتوسيعها وتعريفها كمورد للمعرف.
 يشير الرمز الإضافي (+) إلى أن هذا اسم مورد جديد يجب إنشاؤه وإضافته إلى مواردنا.  لإنشاء مثيل لكائن العرض والتقاطه من التخطيط ، استخدم ما يلي -
Button myButton = (Button) findViewById(R.id.my_button);