در توسینسو تدریس کنید

و

با دانش خود درآمد کسب کنید

معرفی سیستم عامل اندروید (بخش سوم)

با سلام به همه دوستان Itpro. در مطالب گذشته به بررسی سیستم عامل اندروید و بخش های مختلف آن پرداختیم. در این مطلب به بررسی Layout ها خواهیم پرداخت و از مطالب دیگر به طور رسمی شروع به برنامه نویسی اندروید خواهیم کرد.

Layoutهای عمومی


فریمورک برنامه (Application Framework) تعدادی از زیرکلاس های گروه ویو دارد که هرکدام یک راه منحصر به فرد و مفید برای سازماندهی محتوا فراهم می کنند. دیاگرام زیر شکل layoutهای عمومی را نشان می دهد که هرکدام می توانند برای نیازهای خاص مورد استفاده قرار گیرند.

معرفی سیستم عامل اندروید (بخش سوم)

در ادامه به توضیح هرکدام از layout ها خواهیم پرداخت.

layout خطی(linear) این layout همه ی فرزندان خود را به یک ترتیب خطی افقی و یا عمودی سازماندهی می کند و در صورت نیاز یک اسکرول بار برای آن می سازد. از این layout زمانی استفاده می شود که بخواهیم ویجت ها را به صورت افقی یا عمودی بچنیم.

layout نسبی (Relative) این layout فرزند را با توجه به یکدیگر و یا پدر آن شی سازماندهی می کند. از این layout زمانی استفاده می شود که مکان ویجت ها با توجه به ارتباط با اشیا دیگر مشخص می شود(مثلا در سمت چپ یک شی).

layout جدولی این layout اشیا را به صورت جدولی در سطر و ستون ها مرتب می کند و زمانی از این layout استفاده می شود که ویجت ها باید به صورت جدولی قرار بگیرند. این layout زمانی استفاده می شود که اشیا باید در چندین ستون قرار گیرند.

برای سناریوهای پیچیده تر اندروید به layout ها اجازه می دهد که به شکل تودرتو قرار گیرند. Layout هایی که به صورت عمقی تودرتو هستند باعث افت کارایی خواهند شد و تا حد امکان نباید از آنها استفاده کرد.

Layout های وفق پذیر(Adapter)


برای layoutهایی که از یک منبع داده پویا(Dynamic Data Source) استفاده می کنند فریمورک برنامه مجموعه کلاس هایی را فراهم کرده است که از کلاس AdapterView مشتق شده اند.

معرفی سیستم عامل اندروید (بخش سوم)

در دیاگرام بالا دو عدد از معروف ترین adapter layoutها آورده شده است.

• List View: محتوایی را که از منبع داده دریافت می کند را در یک شکل تک ستونی اسکرول دار نمایش می دهد.

• Grid View: محتوایی را که از منبع داده دریافت کرده است را در یک شبکه گرید از سطر ها و ستون ها قرار می دهد.

فایل های xml مربوط به layoutها


برای این که رابط کاربری UI را با استفاده از متد اعلانی بسازیم، اندروید یک لغتنامه xml را به همراه تگ هایی فراهم می کند که این تگ ها هر کدام مشخص کننده ی انواع مختلف اشیا هستند که یک ویو را تشکیل می دهند. اگر بخواهیم این فایل های xml مربوط به layout ها را واضح تر بیان کنیم این فایل ها شبیه به همان فایل های html در صفحات وب و یا فایل های xaml در تکنولوژی WPF مایکروسافت می باشند که فقط برای ساختن رابط کاربری به کار می روند. مثال زیر یک ویوی ساده را نشان می دهد که با استفاده از layout خطی یک ورودی search و یک دکمه seach را در خود دارد.

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk
/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView
android:text="Enter Search Criteria"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/searchCriteriaTextView" />
<Button
android:text="Search"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/searchButton" />
</LinearLayout>

!!!! ارتباط عناصر و نام مشخصه ها


ارتباط نام عناصر و مشخصه ها به نام کلاس ها و متد ها در برنامه توسط فریمورک انجام می شود و نیازی به مقید کردن آن ها نیست. در مثال قبل نام عناصر LinearLayout, TextView, Button نام کلاسی در فریمورک برنامه است. همچنین به طور مشابه در عنصر Button مشخصه android:text به تابع setText() در کلاس Button مربوط می شود.

شناسه ها (id)


هر ویو می تواند دارای یک ID یا شناسه عددی یکتا باشد. این شناسه می تواند به عنصر موجود در ویو ارجاع شود و هرگاه که بخواهیم عملی را از کد برنامه بر روی عنصر مورد نظر انجام دهیم، از شناسه آن عنصر استفاده خواهد شد. در فایل XML هر شناسه به صورت یک نام رشته ای می باشد. برای مثال خط کد زیر را در نظر بگیرید.

Android:id=”@+id/searchButton”

در این مثال اپراتور @ به پارسر می گوید که از این رشته برای منبع شناسه استفاده شود. علامت + به پارسر می گوید که این یک نام جدید برای عنصر می باشد که باید به فایل منبع R.java اضافه شود. فایل منبع برای هرکدام از شناسه ها ثابت های عددی تعریف می کند تا بتوان به آنها ارجاع داد.

استفاده از layout های xml در activityها


Layoutهای xml به سادگی می توانند در درون یک برنامه در حال اجرا لود شوند. این عمل معمولا در متد onCraete() یک activity با استفاده از متد setContentView() اجرا شود. برای مثال خط کد زیر را در نظر بگیرید.

setContentView(R.layout.main)

Intentها


Intentها پیامهایی هستند که بین بخش های مختلف یک برنامه اندروید رد و بدل می شوند. این پیام ها به منظور درخواست اجرای یک عمل خاص ارسال می شوند. Intent ها ممکن است برای انجام کارهای زیر استفاده شوند.

• شروع یک activity با امکان دریافت نتیجه

• شروع و توقف یک سرویس

• اعلان شرایطی مثل کمبود باتری و یا تغییر منطقه زمانی

• درخواست اجرای یک عمل از یک برنامه دیگر مثل درخواست از برنامه نقشه که یک نقطه مورد نظر را نشان دهد و یا از برنامه دوربین درخواست شود که یک عکس گرفته و آن را ذخیره نماید.

منابع (Resources)


ساختن یک برنامه اندروید چیزی بیشتر از نوشتن چند خط کد است. یک برنامه قوی موبایل نیاز به منابعی مانند فایل های عکس و صوت، انیمیشن ها ، منوها و قالب های مفید است. فریمورک برنامه API هایی را فراهم می کند که این API ها می توانند برای لود و استفاده کردن از منابع گفته شده در برنامه اندروید به کار روند.

فایل R.java


در درون برنامه، منابع با استفاده از یک ثابت عددی شناخته شده و ارجاع داده می شوند. این ثابت عددی زمانی که منبع به برنامه افزوده شد و کامپایل شد به صورت اتوماتیک به منبع تخصیص داده می شود. این ثابت های عددی در یک فایل سورس جاوا با نام R.java قرار دارد. مثال زیر یک کلاس فایل R.java را در یک برنامه ساده نشان می دهد.

public final class R {
public static final class attr {
}
public static final class drawable {
public static final int icon=0x7f020000;
}
public static final class id {
public static final int myButton=0x7f050000;
public static final int searchButton=0x7f050002;
public static final int searchCriteriaTextView=0x7f050001;
}
public static final class layout {
public static final int main=0x7f030000;
public static final int search=0x7f030001;
}
public static final class string {
public static final int app_name=0x7f040001;
public static final int hello=0x7f040000;
}
}

تا به اینجا به بررسی سیستم عامل اندروید و برنامه های آن پرداختیم. در مطالب آینده سعی خواهد شد که برنامه نویسی اندروید با استفاده از زبان C# و با ابزار Xamarin.Android آموزش داده شود. بیان دیدگاه های دوستان می تواند در کیفیت این مطالب بسیار موثر باشد. Itpro باشید

نویسنده: مهدی عادلی فر

منبع: انجمن تخصصی فناوری اطلاعات ایران

هرگونه نشر و کپی برداری بدون ذکر منبع و نام نویسنده دارای اشکال اخلاقی می باشد.

#آموزش_اندروید #آموزش_گام_به_گام_اندروید #ساخت_ui_برای_اندروید #layoutها_در_اندروید #نحوه_چیدن_عناصر_در_اندروید #ساخت_رابط_کاربری_برای_اندروید
عنوان
1 معرفی سیستم عامل اندروید رایگان
2 معرفی سیستم عامل اندروید (بخش دوم) رایگان
3 معرفی سیستم عامل اندروید (بخش سوم) رایگان
4 معرفی Xamarin.Android برای نوشتن برنامه های اندروید به زبان #C رایگان
5 شروع کار برنامه نویسی اندروید با استفاده از Xamarin رایگان
6 ساخت مکانیزم ذخیره سازی اطلاعات در اندروید به زبان #C رایگان
7 طراحی رابط کاربری اندروید با استفاده از Xamarin رایگان
8 ساخت منو صفحه اصلی در اندروید رایگان
9 نمایش اطلاعات یک Entity در برنامه اندروید(Xamarin) رایگان
10 نوشتن Save و Delete برای برنامه اندروید در Xamarin رایگان
زمان و قیمت کل 0″ 0
0 نظر

هیچ نظری ارسال نشده است! اولین نظر برای این مطلب را شما ارسال کنید...

نظر شما
برای ارسال نظر باید وارد شوید.
از سرتاسر توسینسو
تنظیمات حریم خصوصی
تائید صرفنظر
×

تو می تونی بهترین نتیجه رو تضمینی با بهترین های ایران بدست بیاری ، پس مقایسه کن و بعد خرید کن : فقط توی جشنواره تابستانه می تونی امروز ارزونتر از فردا خرید کنی ....