برنامه نویسی اندروید

اموزش برنامه نویسی اندروید تخصصی

برنامه نویسی اندروید

اموزش برنامه نویسی اندروید تخصصی

۲ مطلب با موضوع «دیالوگ» ثبت شده است

1

2

3

4

5

6

7

8

9

.setSingleChoiceItems(items, 2, new DialogInterface.OnClickListener() {

    @Override

    public void onClick(DialogInterface dialogInterface, int i) {

 

        result = items[i];

        Toast.makeText(MainActivity.this, result + " selected", Toast.LENGTH_SHORT).show();

 

    }

})

در کد بالا با انتخاب هر آیتم توسط کاربر، نام آن آیتم در یک Toast چاپ می شود:

تعیین Listener برای آیتم های لیست

استایل دهی به اجزای AlertDialog نیز امکان‌پذیر است.
یک استایل جدید با نام دلخواه DialogTheme به styles.xml اضافه کردم که از Theme.AppCompat.Light.Dialog.Alert ارث بری شده:

1

2

3

4

5

<style name="DialogTheme" parent="Theme.AppCompat.Light.Dialog.Alert">

    <item name="colorAccent">#41bf13</item>

    <item name="android:textColorPrimary">#ac2a2a</item>

    <item name="android:background">#c7cc5f</item>

</style>

برای اتصال استایل به دیالوگ می‌بایست آنرا به عنوان پارامتر ورودی دوم AlertDialog.Builder تعریف کنیم:

1

new AlertDialog.Builder(this, R.style.DialogTheme)

تعریف Style برای AlertDialog

ممکن است بخواهید برای پنجره دیالوگ یک نوار حاشیه (border) یا انحنا در چهار گوشه (radius) تعریف کنید. برای اینکار ابتدا یک Resource file درون دایرکتوری drawable ایجاد می کنم:

فایل dialog_background.xml:

1

2

3

4

5

6

7

8

9

10

11

12

13

<?xml version="1.0" encoding="utf-8"?>

<inset xmlns:android="http://schemas.android.com/apk/res/android"

    android:insetLeft="16dp"

    android:insetTop="16dp"

    android:insetRight="16dp"

    android:insetBottom="16dp">

 

    <shape android:shape="rectangle">

        <corners android:radius="8dp" />

        <solid android:color="#97e76a" />

        <stroke android:width="5dp" android:color="#303759" />

    </shape>

</inset>

لینک توضیحات مربوط به InsetDrawable در انتهای مبحث قید شده. با اینحال نام آیتم ها و خواص بکار رفته در کد بالا گویای کاربرد آنهاست. insetLeft و سه مورد دیگر جهت تعیین فاصله پنجره دیالوگ از حاشیه صفحه نمایش هستند. سپس یک تگ shape داریم که درون آن به ترتیب مقدار انحنای گوشه ها، رنگ پس زمینه و ضخامت نوار حاشیه و رنگ آن تعریف شده اند.
حالا در استایل DialogTheme خط زیر را جایگزین خاصیت background می‌کنم:

1

<item name="android:windowBackground">@drawable/dialog_background</item>

  • vahid hasani

Toast سفارشی

vahid hasani | | ۰ نظر

توست یک پیام را به کاربر نمایش می دهد و  بعد از چند لحظه از بین می رود.در این آموزش می خواهیم یک Toast را طراحی کنیم و اینکه بتوانیم در داخل توست از تصویر هم استفاده کنیم.برای شروع کار یک پروژه جدید ایجاد می کنیم و نام آن را  Toast قرار می دهیم.ب رروی لایه اصلی برنامه main.xml یک Button قرار می دهیم تا زمانی که روی آن کلیک شد پیغام برنامه را به کاربر نمایش دهد.

  • vahid hasani