آموزش برنامه نویسی اندروید (Android)
۴۱۹ آموزش
نمایش دسته بندی ها (۴۱۹ آموزش)

نمایش یک عکس در پس زمینه یک Activity ، در برنامه نویسی اندروید

فرض کنید که بخواهیم یک عکس را در پس زمینه یک Activity نمایش بدهیم، برای این منظور، می توانیم به دو روش زیر عمل کنیم :

روش اول : تعیین عکس پس زمینه Activity ، با کدنویسی در فایل xml متناظر با Activity

همان طور که می دانید، برای Activity ، یک فایل xml متناظر داریم که عناصر گرافیکی Activity و در کل، ساختار گرافیکی Activity در آن تعریف می شود. فرض می کنیم که فایل xml متناظر با Activity در ابتدا دارای کدهای زیر باشد :


<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

</LinearLayout>

فرض می کنیم که یک عکس با نام myImage درون یکی از پوشه های drawable از پروژه اندروید داریم (کاری به پسوند آن عکس نداریم، مثلا می تواند myImage.png باشد)، اکنون برای آنکه آن عکس را به عنوان پس زمینه Activity تعیین کنیم، باید مشخصه زیر را به تگ LinearLayout اضافه کنیم :


android:background="@drawable/myImage"

یعنی کدها به صورت زیر خواهند بود :


<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/myImage" >

</LinearLayout>

روش دوم : تعیین عکس پس زمینه Activity ، با کدنویسی در فایل java مربوط به Activity

فرض می کنیم که یک عکس با نام myImage درون یکی از پوشه های drawable از پروژه اندروید داریم (کاری به پسوند آن عکس نداریم، مثلا می تواند myImage.png باشد)، اکنون برای آنکه آن عکس را به عنوان پس زمینه Activity تعیین کنیم، باید در فایل java مربوط به آن Activity ، کدهای زیر را بنویسیم :


LinearLayout layout =(LinearLayout) findViewById(R.id.linearLayout1);
layout.setBackgroundDrawable(getResources().getDrawable(R.drawable.myImage));

دقت کنید که کدهای بالا، برای فایل xml زیر که متناظر با Activity می باشد، نوشته شده است :


<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/linearLayout1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

</LinearLayout>

نکته مهم این است که در فایل xml مورد نظر، لایه به صورت LinearLayout انتخاب شده است (برای موارد دیگر، باید کدهای java را که ذکر کردیم، برای آن نوع لایه بنویسیم). همچنین برای LinearLayout ، یک id برابر linearLayout1 در نظر گرفته ایم که در کدهای java ، به آن ارجاع داده ایم.

نویسنده علیرضا گلمکانی
شماره کلید 845
گزینه ها
به اشتراک گذاری (Share) در شبکه های اجتماعی
نظرات 6 6 0
miladabadeh
۱۳۹۵/۰۴/۲۴
۱۷:۲۰

سلام وقت بخیر 
اگر بخوابیم عکس متغییر بشه باید چیکار کرد؟

aty
۱۳۹۵/۰۵/۳۰
۱۴:۵۷

خیلی ممنون از راهنماییتون

sonic
۱۳۹۵/۰۸/۲۹
۰۰:۱۵

سلام  خسته نباشید

لطفا امکان داره سایز مناسب عکس background یک برنامه را با در نظر گرفتن سایز های مختلف دیوایس ها بیان کنید ( گوشی های کوچک ، گوشی های بزرگ و تبلت ها )

ممنون

mahdi pakravan
۱۳۹۶/۰۱/۰۹
۱۱:۱۶

سلام
خیلی ممنونم از آموزش خوبتون واقعا به درد من خوردش .
موفق باشید .

جعفر
۱۳۹۶/۰۳/۲۴
۱۶:۰۹

سلام
یه مین اکتیویتی با یک دکمه که پس زمینش یه عکسه دارم
میخوام امکان تعویض عکس با انتخاب از گالری را بهش اضافه کنم باید چیکار کنم؟

مهدی رضایی
۱۳۹۹/۰۶/۲۵
۱۱:۰۵

ببخشید من هر وقت به اکتیویتی عکس میدم برنامه توی دیوایس واقعی متوقف میشه ونیره بیرون فقط هم با عکس ها مشکل دارم نه با رنگ ها درضمن با همه عکس ها هم مشکل داره 
ممنون میشم اگه نتیجه رو به ایمیلم بفرستید

ارسال نظر جدید (بدون نیاز به عضو بودن در وب سایت)