فیلم آموزشی کاربردی

1 فایل

  1. 50٬000 ریال

    یکی از Layout های اندروید که برای چیده مان المان ها یا ویجت ها، میتوانیم از آن استفاده کنیم RelativeLayout میباشد و همانطور که از اسم آن مشخص میباشد، بطور نسبی ویجت ها را میتوانیم با طراز بندی های خاصی بچینیم.
    در RelativeLayout میتوانید با استفاده از ویژگی های above,below,left,right تعیین کنید که ویجت ها به چه صورتی کنار هم قرار بگیرند.
    نکته: RelativeLayout بسیار قابل انعطاف میباشد و میتوان بسیار راحت ویجت ها را با قاعده های آن در صفحه بطور ترو تمیز چید.
    هر کدام از آیتم های بالا دارای اصول و قاعده های مربوط به خود میباشند که میبایستی تمامی آنها را یادگرفته و بتوانیم تشخیص دهیم در چه زمانی از کدام Layout استفاده نماییم
     
    روش تعریف RelativeLayout در اندروید:
    برای تعریف کردن RelativeLayout میبایستی که تگ آن را تعریف نماییم.

     
    <RelativeLayout android:layout_width="fill_parent" android:layout_height="wrap_content"> پس از تعریف، بایستی المان را در داخل این Viewgroup و نسبت های مربوطه را برای هرکدام از ویجت ها قرار داد.
    قرار دادن خصوصیت Id:
    Id یکی از مهمترین ویژگی های هر Layout یا ویجت میباشد که باید به آنها نسبت دهیم تا بتوانیم در قسمت Layout و اکتیویتی به آنها دستیابی پیدا کنیم و عملکرد هر کدام را تعریف نماییم.
    طریقه تعریف Id:
    {xtypo_code}android:id="@+id/name"
    بعد از تعریف کردن id مربوطه، name یک مقدار رشته ای برای آن در فایل R ایجاد میکند و از این طریق میتوان به آنها دسترسی پیدا کرد.
    خصوصیات RelativeLayout:
    android:layout_above : این خصوصیت تعیین میکند که این ویجت در بالای کدام view یا ویجت دیگر قرار بگیرد.
    android:layout_below : این خصوصیت تعیین میکند که این ویجت در پایین کدام view یا ویجت قرار بگیرد.
    android:layout_centerHorizontal : این خصوصیت تعیین میکند که این view یا ویجت بطور افقی وسط چین شود.
    android:layout_centerVertical : این خصوصیت تعیین میکند که این view یا ویجت بطور عمودی وسط چین شود.
    android:layout_centerInParent : این خصوصیت تعیین میکند که این view یا ویجت، بطور عمودی و افقی وسط چین شود و دقیقا مشابه استفاده از دو ویژگی centerHorizontal و centerVertical میباشد.
    android:layout_toLeftOf : این خصوصیت تعیین میکند که این view یا ویجت سمت چپ کدام view باشد.
    android:layout_toRightOf: این خصوصیت تعیین میکند که این view یا ویجت سمت راست کدام view باشد.
    android:layout_alignParentRight : این خصوصیت تعیین میکند که این view یا ویجت سمت راست والد خود باشد.
    Margin :
    Margin برای ایجاد کردن فاصله بین View ها از طرف خارج خود میباشد یا بطور ساده تر میتوان گفت بین ویجت ها از جهت های بالا، پایین، راست و چپ فاصله ایجاد میکند و به هر اندازه که نیاز باشد، میتوان سایز های مورد نظر خود را به آن اختصاص داد.
     
    در این بخش یک مثال را بطور عملی اجرا خواهیم نمود تا بطور کامل روش استفاده از RelativeLayout را بیاموزید.
    ابتدا یک پروژه جدید اندروید را ایجاد کنید.
    بر روی پوشه res/layout راست کلیک کنید و سپس گزینه Android xml file را انتخاب کنید و یک اسم برای Layout خود انتخاب کنید.
     
    و یا بصورت افقی :
     
    <RelativeLayout android:layout_width="fill_parent" android:layout_height="wrap_content"> <EditText android:layout_height="wrap_content" android:text="Email" /> <TextView android:layout_height="wrap_content" android:layout_below="@id/label" /> <Button android:layout_height="wrap_content" android:layout_below="@id/inputEmail" android:layout_alignParentLeft="true" android:layout_marginRight="10px" android:text="Login" /> <Button android:layout_toRightOf="@id/btnLogin" android:layout_alignTop="@id/btnLogin" android:text="Cancel" /> <Button android:layout_alignParentBottom="true" android:text="Register new Account" android:layout_centerHorizontal="true"/>  
    خروجی
    ارتباط layout با اکتیویتی:
    setContentView(R.layout.relative_layout);
    با این دستور براحتی تعیین میکنید، هنگامی که این Activity اجرا شود، کدام Layout ظاهر شود.
    در ادامه همراه شاپ دروید باشید
    این آموزش از چه قسمت هایی تشکیل شده است؟
     
    در این آموزش با مفاهیم Layout در اندروید و RelativeLayout بطور کامل آشنا خواهید شد و قادر خواهید بود رابط های گرافیکی مختلفی را پیاده سازی نمایید.
    از جمله آیتم های موجود میتوان به موارد زیر اشاره کرد:
     
    مفهوم RelativeLayout در اندروید
    انواع Layout های موجود در اندروید برای پیاده سازی رابط های کاربری
    استفاده از خصوصیت های CenterVertical و CenterHorizontal در RelativeLayout
    آشنایی و استفاده از Margin
    آشنایی با id و طریقه تعریف کردن id ها
    طراز بندی ویجت ها کنار هم
    حل مشکل بهم ریختگی View ها در RelativeLayout
     
     
    مشخصات ویدئو

    عنوان:آشنایی با RelativeLayout در اندروید
    مدرس:فرزاد سرسیفی
    مدت:21 دقیقه
    سطح:حرفه ای

    0 خرید    0 دانلود

       (0 نقد)

    0 نظر

    بروز شد

  • نظر فایل

  • آمارهای بخش دریافت

    • فایل‌ها
      51
    • نظر
      7
    • نقد
      20

    آخرین فایل
    توسط حمید اردکانی

    2    0

  • پست ها

    • آیا در کلاس سرویس مقدار برگشتی متد onStartCommand را START_STICKY قرار داده اید ؟
    • فقط applicationId را تغییر بدین کفایت میکنه ورژن هم بالاتر ببرین که برای نسخه جدید الزامی میباشد
    • اپلیکیشن سجا مشاهده فایل اپلیکیشن سیستم جامع آگهی و تبلیغات (سجا) راهی ساده جهت قرار دادن آگهی های شما و مشاهده راحت آگهی ها توسط کاربران می باشد.
      اپلیکیشن سجا با موضوع نیازمندی های آنلاین راه اندازی گردیده و هدف اصلی آن در ارتباط قرار دادن خریدار و فروشنده به صورت مستقیم می باشد.
      امکانات: 1- ارسال و مشاهده آگهی به صورت رایگان 2- امکان ایجاد پیج اختصاصی برای هر فروشگاه یا فرد 3- دنبال کردن آگهی دهندگان مورد علاقه و ......... ارسال کننده حمید اردکانی ارسال ۱۸/۰۷/۲۲ دسته کسب و کار  
    • ضمن عرض سلام و احترام خدمت تمامی کاربران فروم محبوب انجمن اندروید ایران
      ، همانطور که قول دادم بهتون ،قصد دارم یکسری مقالات در زمینه برنامه نویسی های مختلف ، برای شما عزیزان قرار دهم . پیشاپیش از تمامی مدیران فروم قدردانی میکنم بابت این فروم بسیار مفید و کاربردی. در این مقاله می پردازیم به مبحثی کاربردی تحت عنوان :نحوه ی ایجاد کامپوننت های سفارشی در اندروید   اندروید لیست بزرگی از ویجت های از پیش ساخته شده مانند Button، TextView، EditText، ListView، CheckBox، RadioButton، Gallery، Spinner، AutoCompleteTextView و غیره را ارائه می کند،که شما میتوانید مستقیما در اپلیکیشن خود از آن ها استفاده کنید. ولی ممکن است موقعیتی به وجود بیاید که شما از قابلیت های ویجت های موجود راضی نباشید به طوری که حس کنید این ویجت ها نیاز و خواسته ی شما را برطرف نمی کند. اندروید ابزار هایی را برای سفارشی سازی این موارد فراهم کرده است که با کمک آن ها می توانید با توجه به نیاز خود ، عمل سفارشی سازی را انجام دهید. اگر فقط نیازمند اعمال تغییرات و تنظیمات کوچکی در یک ویجت یا Layout موجود باشید، می توانید به سادگی یک زیر کلاس از ویجت یا Layout مربوطه ایجاد کنید و متد های آن را override کنید. این کار به شما کنترل دقیقی را ، بر روی ظاهر و عملکرد یک عنصر موجود بر روی صفحه نمایش ، می دهد . این مقاله با استفاده از گام ها و مراحل ساده شرح می دهد که شما چگونه می توانید view های سفارشی خود را ایجاد کنید و آن ها را در اپلیکیشن خود به کار بگیرید .   ایجاد یک مولفه سفارشی ساده: در صورتی که شما بخواهید عملکرد یک ویجت موجود مانند Button، TextView، EditText، ListView، CheckBox و غیره را توسعه دهید، ساده ترین راه برای ایجاد مولفه­ ی سفارشی مربوط به خودتان، توسعه کلاس مربوط به ویجت موجود یا زیر کلاس های مربوط به کلاس خودتان است. در غیر این صورت شما باید با شروع از کلاس android.view.View همه کارها را خودتان انجام دهید. در ساده ترین شکل، شما باید سازنده (constructors) های خود را متناظر با همه سازنده های کلاس اصلی بنویسید.  1) یگ پروژه جدید در اندروید استودیو ایجاد کنید و آن را با نام myapplication تحت پکیج com.example.clicksite7.myapplication ایجاد کنید. 2) فایل XML به صورت res/values/attrs.xml برای تعریف اتریبیوت های جدید به همراه نوع داده آنها ، تعریف کنید . 3) فایل src/mainactivity.java را برای اضافه کردن کدها ، جهت تعریف اجزای سفارشی ، ایجاد کنید . 4) فایل res/layout/activity_main.xml را تغییر دهید و کدهای لازم را اضافه کنید.(مطابق کدهای زیر) 5) اپلیکیشن را اجرا کنید و نتیجه را در امولاتور مورد بررسی قرار دهید .   فایل اتریبیوت زیر را با نام attrs.xml در پوشه res/values ایجاد کنید : <?xml version="1.0" encoding="utf-8"?> <resources> <declare-styleable name="TimeView"> <declare-styleable name="TimeView"> <attr name="title" format="string" /> <attr name="setColor" format="boolean"/> </declare-styleable> </declare-styleable> </resources>   فایل layout استفاده شده توسط اکتیویتی را تغییر دهید : <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" xmlns:custom="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity" > <com.example.clicksite7.myapplication.TimeView android:id="@+id/timeView" android:layout_width="match_parent" android:layout_height="wrap_content" android:textColor="#fff" android:textSize="40sp" custom:title="my time view" custom:setColor="true" /> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/simple" android:layout_below="@id/timeView" android:layout_marginTop="10dp" /> </RelativeLayout>
      فایل جاوای زیر را با نام timeview ایجاد کنید  : package com.example.clicksite7.myapplication; /** * Created by clicksite7 on 9/14/2016. */ import java.text.SimpleDateFormat; import java.util.Calendar; import android.content.Context; import android.content.res.TypedArray; import android.graphics.Color; import android.util.AttributeSet; import android.widget.TextView; public class TimeView extends TextView { private String titleText; private boolean color; public TimeView(Context context) { super(context); setTimeView(); } public TimeView(Context context, AttributeSet attrs) { super(context, attrs); // retrieved values correspond to the positions of the attributes TypedArray typedArray = context.obtainStyledAttributes(attrs, R.styleable.TimeView); int count = typedArray.getIndexCount(); try{ for (int i = 0; i < count; ++i) { int attr = typedArray.getIndex(i); // the attr corresponds to the title attribute if(attr == R.styleable.TimeView_title) { // set the text from the layout titleText = typedArray.getString(attr); setTimeView(); } else if(attr == R.styleable.TimeView_setColor) { // set the color of the attr "setColor" color = typedArray.getBoolean(attr, false); decorateText(); } } } // the recycle() will be executed obligatorily finally { // for reuse typedArray.recycle(); } } public TimeView(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); setTimeView(); } private void setTimeView() { // has the format hour.minuits am/pm SimpleDateFormat dateFormat = new SimpleDateFormat("hh.mm aa"); String time = dateFormat.format(Calendar.getInstance().getTime()); if(this.titleText != null ) setText(this.titleText+" "+time); else setText(time); } private void decorateText() { // when we set setColor attribute to true in the XML layout if(this.color == true){ // set the characteristics and the color of the shadow setShadowLayer(4, 2, 2, Color.rgb(250, 00, 250)); setBackgroundColor(Color.CYAN); } else { setBackgroundColor(Color.RED); } } }application; / فایل اصلی اکتیویتی جاوا را به کد زیر تغییر دهید و اپلیکیشن خود را اجرا کنید تا نتیجه ایجاد کامپوننت سفارشی در اندروید را ملاحظه کنید  : package com.example.clicksite7.myapplication; import android.os.Bundle; import android.widget.TextView; import android.app.Activity; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); TextView simpleText = (TextView) findViewById(R.id.simple); simpleText.setText("That is a simple TextView"); } }package com.exampl
    • ضمن عرض سلام و احترام خدمت تمامی کاربران فروم محبوب انجمن اندروید ایران
      ، همانطور که قول دادم بهتون ،قصد دارم یکسری مقالات در زمینه برنامه نویسی های مختلف ، برای شما عزیزان قرار دهم . پیشاپیش از تمامی مدیران فروم قدردانی میکنم بابت این فروم بسیار مفید و کاربردی. در این مقاله می پردازیم به مبحثی کاربردی تحت عنوان :نحوه ی ایجاد کامپوننت های سفارشی در اندروید   اندروید لیست بزرگی از ویجت های از پیش ساخته شده مانند Button، TextView، EditText، ListView، CheckBox، RadioButton، Gallery، Spinner، AutoCompleteTextView و غیره را ارائه می کند،که شما میتوانید مستقیما در اپلیکیشن خود از آن ها استفاده کنید. ولی ممکن است موقعیتی به وجود بیاید که شما از قابلیت های ویجت های موجود راضی نباشید به طوری که حس کنید این ویجت ها نیاز و خواسته ی شما را برطرف نمی کند. اندروید ابزار هایی را برای سفارشی سازی این موارد فراهم کرده است که با کمک آن ها می توانید با توجه به نیاز خود ، عمل سفارشی سازی را انجام دهید. اگر فقط نیازمند اعمال تغییرات و تنظیمات کوچکی در یک ویجت یا Layout موجود باشید، می توانید به سادگی یک زیر کلاس از ویجت یا Layout مربوطه ایجاد کنید و متد های آن را override کنید. این کار به شما کنترل دقیقی را ، بر روی ظاهر و عملکرد یک عنصر موجود بر روی صفحه نمایش ، می دهد . این مقاله با استفاده از گام ها و مراحل ساده شرح می دهد که شما چگونه می توانید view های سفارشی خود را ایجاد کنید و آن ها را در اپلیکیشن خود به کار بگیرید .   ایجاد یک مولفه سفارشی ساده: در صورتی که شما بخواهید عملکرد یک ویجت موجود مانند Button، TextView، EditText، ListView، CheckBox و غیره را توسعه دهید، ساده ترین راه برای ایجاد مولفه­ ی سفارشی مربوط به خودتان، توسعه کلاس مربوط به ویجت موجود یا زیر کلاس های مربوط به کلاس خودتان است. در غیر این صورت شما باید با شروع از کلاس android.view.View همه کارها را خودتان انجام دهید. در ساده ترین شکل، شما باید سازنده (constructors) های خود را متناظر با همه سازنده های کلاس اصلی بنویسید.  1) یگ پروژه جدید در اندروید استودیو ایجاد کنید و آن را با نام myapplication تحت پکیج com.example.clicksite7.myapplication ایجاد کنید. 2) فایل XML به صورت res/values/attrs.xml برای تعریف اتریبیوت های جدید به همراه نوع داده آنها ، تعریف کنید . 3) فایل src/mainactivity.java را برای اضافه کردن کدها ، جهت تعریف اجزای سفارشی ، ایجاد کنید . 4) فایل res/layout/activity_main.xml را تغییر دهید و کدهای لازم را اضافه کنید.(مطابق کدهای زیر) 5) اپلیکیشن را اجرا کنید و نتیجه را در امولاتور مورد بررسی قرار دهید .   فایل اتریبیوت زیر را با نام attrs.xml در پوشه res/values ایجاد کنید : <?xml version="1.0" encoding="utf-8"?> <resources> <declare-styleable name="TimeView"> <declare-styleable name="TimeView"> <attr name="title" format="string" /> <attr name="setColor" format="boolean"/> </declare-styleable> </declare-styleable> </resources>   فایل layout استفاده شده توسط اکتیویتی را تغییر دهید : <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" xmlns:custom="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity" > <com.example.clicksite7.myapplication.TimeView android:id="@+id/timeView" android:layout_width="match_parent" android:layout_height="wrap_content" android:textColor="#fff" android:textSize="40sp" custom:title="my time view" custom:setColor="true" /> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/simple" android:layout_below="@id/timeView" android:layout_marginTop="10dp" /> </RelativeLayout>   فایل جاوای زیر را با نام timeview ایجاد کنید  : package com.example.clicksite7.myapplication; /** * Created by clicksite7 on 9/14/2016. */ import java.text.SimpleDateFormat; import java.util.Calendar; import android.content.Context; import android.content.res.TypedArray; import android.graphics.Color; import android.util.AttributeSet; import android.widget.TextView; public class TimeView extends TextView { private String titleText; private boolean color; public TimeView(Context context) { super(context); setTimeView(); } public TimeView(Context context, AttributeSet attrs) { super(context, attrs); // retrieved values correspond to the positions of the attributes TypedArray typedArray = context.obtainStyledAttributes(attrs, R.styleable.TimeView); int count = typedArray.getIndexCount(); try{ for (int i = 0; i < count; ++i) { int attr = typedArray.getIndex(i); // the attr corresponds to the title attribute if(attr == R.styleable.TimeView_title) { // set the text from the layout titleText = typedArray.getString(attr); setTimeView(); } else if(attr == R.styleable.TimeView_setColor) { // set the color of the attr "setColor" color = typedArray.getBoolean(attr, false); decorateText(); } } } // the recycle() will be executed obligatorily finally { // for reuse typedArray.recycle(); } } public TimeView(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); setTimeView(); } private void setTimeView() { // has the format hour.minuits am/pm SimpleDateFormat dateFormat = new SimpleDateFormat("hh.mm aa"); String time = dateFormat.format(Calendar.getInstance().getTime()); if(this.titleText != null ) setText(this.titleText+" "+time); else setText(time); } private void decorateText() { // when we set setColor attribute to true in the XML layout if(this.color == true){ // set the characteristics and the color of the shadow setShadowLayer(4, 2, 2, Color.rgb(250, 00, 250)); setBackgroundColor(Color.CYAN); } else { setBackgroundColor(Color.RED); } } } فایل اصلی اکتیویتی جاوا را به کد زیر تغییر دهید و اپلیکیشن خود را اجرا کنید : package com.example.clicksite7.myapplication; import android.os.Bundle; import android.widget.TextView; import android.app.Activity; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); TextView simpleText = (TextView) findViewById(R.id.simple); simpleText.setText("That is a simple TextView"); } }