tejariapp-new-logotejariapp-new-logotejariapp-new-logotejariapp-new-logo
  • صفحه اصلی
  • پروژه ها
    • پروژه طراحی سایت
    • پروژه های اندروید
    • پروژه های تحت ویندوز
    • UI & UX
    • ربات تلگرام
  • سفارش پروژه
    • انجام پروژه اندروید (Android)
    • طراحی و ساخت اپلیکیشن موبایل
    • انجام پروژه طراحی سایت با php
    • انجام پروژه طراحی سایت با Asp.net
    • انجام پروژه سی شارپ
    • فرم سفارش پروژه
  • مدرسه ی تجاری اپ
    • طراحی سایت
    • اندروید
    • سی شارپ
    • آموزش پایگاه داده
    • برنامه های کاربردی
  • لینک های مفید
    • پرداخت آنلاین
    • درباره تجاری اپ
    • تماس با ما
استخدام برنامه نویس متلب
سفارش پروژه
✕
            هیچ نتیجه ای یافت نشدمشاهده همه نتایج

            آموزش اندروید فصل سوم قسمت شانزدهم – زیر کلاس DialogFragment

            • صفحه نخست
            • مدرسه ی تجاری اپ آموزش اندروید
            • آموزش اندروید فصل سوم قسمت شانزدهم – زیر کلاس DialogFragment
            آموزش برنامه نویسی اندروید فصل سوم
            آموزش اندروید فصل سوم قسمت پانزدهم – زیر کلاس ListFragment
            20 تیر 1395
            آموزش برنامه نویسی اندروید فصل سوم
            آموزش اندروید فصل سوم قسمت هفدهم – زیر کلاس PreferencesFragment
            22 تیر 1395
            منتشر شده توسط خانم منطق
            آموزش برنامه نویسی اندروید فصل سوم

            آموزش برنامه نویسی اندروید فصل سوم

            در قسمت سی و چهارم آموزش اندروید در ادامه آموزش زیر کلاس های کلاس فرگمنت ، زیر کلاس DialogFragment را آموزش داده ایم.

            آموزش اندروید فصل سوم قسمت شانزدهم – زیر کلاس DialogFragment

            توجه : برای مشاهده تصاویر در سایز اصلی برروی آنها کلیک کنید.

            استفاده از DialogFragment

            نوع دیگری از فرگمنت ها که میتوان از آنها استفاده کرد فرگمنت های دیالوگی است. این گونه فرگمنت هابه صورت شناور برروی اکتیویتی نمایش داده میشود و معمولا برای پیغام هایی که برای اطمینان حاصل کردن است استفاده میشود. برای ایجاد فرگمنت های دیالوگی باید کلاس پایه DialogFragment بسط داده شود. برای درک بیشتر به مثال زیر دقت کنید

            پروژه جدیدی به نام DialogFragmentPrj ایجاد کرده و کلاس جاوا جدیدی به نام Fragment1 ایجاد میکنیم و در آن چنین کدنویسی میکنیم که کدهای زیر شامل دو بخش است. بخش اول متد newInstance برای دریافت title از اکتیویتی اصلی و بخش دوم onCreateDialog برای تنظیم ویژگی های ظاهری و دکمه های پنجره دیالوگی ک نمایش داده میشود

            package com.example.dialogfragmentprj;
            
            
            
            import android.app.AlertDialog;
            
            import android.app.AlertDialog.Builder;
            
            import android.app.Dialog;
            
            import android.app.DialogFragment;
            
            import android.content.DialogInterface;
            
            import android.os.Bundle;
            
            
            
            public class Fragment1 extends DialogFragment {
            
            
            
                    static Fragment1 newInstance(String title){
            
                             Fragment1 fragment = new Fragment1();
            
                             Bundle args = new Bundle();
            
                             args.putString("title", title);
            
                             fragment.setArguments(args);
            
                             return fragment;
            
                    }
            
            
            
                    @Override
            
                    public Dialog onCreateDialog(Bundle savedInstanceState){
            
                             String title = getArguments().getString("title");
            
                             return new AlertDialog.Builder(getActivity()).setIcon(R.drawable.ic_launcher)
            
                                                .setTitle(title)
            
                           .setPositiveButton("Ok", new DialogInterface.OnClickListener() {
            
            
                                 public void onClick(DialogInterface dialo, int whichbutton) {
            
            
                                                ((MainActivity)getActivity()).doPositiveClick();
            
                                                          }
            
                                  }).setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
            
            
            
                                   @Override
            
                                   public void onClick(DialogInterface dialog, int whichbutton) {
            
            
                                          ((MainActivity)getActivity()).doNegativeClick();
            
                                                          }
            
                                                }).create();
            
                    }
            
            }
            

            سپس در فایل MainActivity.java نیز عبارت titile و عملیات مناسب برای دو متد ()doNegativeClick و ()doPositiveClick را تنظیم میکنیم(عملیات شامل نمایش پیغام مناسب با کلاس Toast خواهد بود)

            package com.example.dialogfragmentprj;
            
            
            
            import android.app.Activity;
            
            import android.os.Bundle;
            
            import android.util.Log;
            
            import android.widget.Toast;
            
            public class MainActivity extends Activity {
            
            
            
                    @Override
            
                    protected void onCreate(Bundle savedInstanceState) {
            
                             super.onCreate(savedInstanceState);
            
                             setContentView(R.layout.activity_main);
            
            
            
                             Fragment1 dialogfragment = 
            Fragment1.newInstance("Are you sure you want to do this??");
            
                             dialogfragment.show(getFragmentManager(), "dialog");
            
                    }
            
                    public void doPositiveClick(){
            
                             //--perform steps when user click ok--
            
                            Toast.makeText(getActivity(), "You clicked Ok", Toast.LENGTH_SHORT).show();
            ;
            
                    }
            
                    public void doNegativeClick(){
            
                             //--perform steps when user click cancel--
            
                            Toast.makeText(getActivity(), "You clicked Cancell", Toast.LENGTH_SHORT).show();
            
                    }
            
            }
            

            سپس برنامه را اجرا کرده و نتیجه را به صورت زیر ببینید

            آموزش کاربردی اندروید-قسمت سی و چهارم

            روش کار

            برای ایجاد یک فرگمنت دیالوگی ابتدا یک کلاس جاوا ایجاد کرده که کلاس DialogFragment را بسط میدهد

            public class Fragment1 extends DialogFragment {
            

            متد زیر با نام ()newInstance ابتدا شئی از نوع کلاس جاری خود ایجاد کرده و شئی نیز ازنوع Bundle . مقدار title که در اکتیویتی MainActivity اراسل میشود درون شی Bunlde قرار میگیرد(args) و سپس در این کلاس به خارج فرستاده میشود و هنگام ایجاد دیالوگ از آن استفاده میشود.

                 static Fragment1 newInstance(String title){
            
                             Fragment1 fragment = new Fragment1();
            
                             Bundle args = new Bundle();
            
                             args.putString("title", title);
            
                             fragment.setArguments(args);
            
                             return fragment;
            
                    }
            

            سپس متد ()onCreateDialog را تعریف کرده ایم که بعد از متد ()onCreate و قبل از متد ()onCreateView فراخوانی میگردد

                   @Override
            
                    public Dialog onCreateDialog(Bundle savedInstanceState){
            
                             String title = getArguments().getString("title");
            
                             return new AlertDialog.Builder(getActivity()).setIcon(R.drawable.ic_launcher)
            
                                                .setTitle(title)
            
                                  .setPositiveButton("Ok", new DialogInterface.OnClickListener() {
            
                                    public void onClick(DialogInterface dialo, int whichbutton) {
            
                                                       ((MainActivity)getActivity()).doPositiveClick();
            
                                                }
            
                          }).setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
            
            
                                                          @Override
            
                                public void onClick(DialogInterface dialog, int whichbutton) {
            
                          ((MainActivity)getActivity()).doNegativeClick();
            
                                        }
                                             }).create();
            
                    }
            

            حال در MainActivity به صورت زیر یک شی از نوع کلاس Fragment1 ایجاد کرده و از این طریق به متد ()newInstance جهت تعیین عبارت title برای پنجره دیالوگ  دسترسی پیدا خواهیم کرد.

            متد ()getFragmentManager نیز وظییفه ارتباط برقرار کردن با فرگمنت را برعهده دارد و از طریق دومتد Activity.getFragmentManager() و Fragment.getFragmentManager() بدست می آید

            Fragment1 dialogfragment = Fragment1.newInstance("Are you sure you want to do this??");
            
                             dialogfragment.show(getFragmentManager(), "dialog");
            

            همچنین در انتها دو متد ()doPositiveClick و ()doNegativeClick برای کنترل کلیک کاربر ایجاد میکنیم 

            public void doPositiveClick(){
            
                             //--perform steps when user click ok--
             Toast.makeText(getActivity(), "You clicked Ok", Toast.LENGTH_SHORT).show();
            
            
                    }
            
                    public void doNegativeClick(){
            
                             //--perform steps when user click cancel--
             Toast.makeText(getActivity(), "You clicked Cancel", Toast.LENGTH_SHORT).show();
            
                    }
            

            مدرس : خانم مهندس داودی نژاد

            آموزش اندروید فصل سوم قسمت پانزدهم

            آموزش اندروید فصل سوم قسمت هفدهم

            اشتراک گذاری

            پست های مرتبط

            دستورات جریان کنترل (Control flow statements) یا دستورات شرطی و حلقه ها در زبان برنامه نویسی دارت Dart

            دستورات جریان کنترل (Control flow statements) یا دستورات شرطی و حلقه ها در زبان برنامه نویسی دارت Dart

            30 بهمن 1400

            دستورات شرطی و حلقه ها در زبان برنامه نویسی دارت (Dart)


            ادامه مطلب
            آموزش عملگرها یا Operator ها در زبان برنامه نویسی دارت یا Dart

            آموزش عملگرها یا Operator ها در زبان برنامه نویسی دارت یا Dart

            30 بهمن 1400

            آموزش عملگرها یا Operator ها در زبان برنامه نویسی دارت (Dart)


            ادامه مطلب
            توابع در زبان برنامه نویسی دارت (Dart)

            توابع در زبان برنامه نویسی دارت (Dart)

            27 بهمن 1400

            توابع در زبان برنامه نویسی دارت (Dart)


            ادامه مطلب

            دیدگاهتان را بنویسید لغو پاسخ

            نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

            ساخت اپلیکیشن های موبایل

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

             
            کلیک کنید

            آخرین دیدگاه ها

            • 7 خرداد 1401

              داودی نظر در آموزش استفاده از ckeditor همراه با آپلود عکس در لاراول 6

            • 6 فروردین 1401

              yasaman نظر در راست چین کردن متن در فیگما Figma

            • 3 فروردین 1401

              رضا نظر در مفاهیم Observable و Observer در RxJava

            تجاری اپ در شبکه های اجتماعی

            لوگوی تایید پرداخت آنلاین

            2015-2022 © تمامي حقوق مادي و معنوي اين وب سايت نزد تجاری اپ محفوظ بوده و هر گونه کپي برداري از مطالب پيگرد قانوني به همراه دارد! | طراح سایت : ProgRun
            سفارش پروژه
                      هیچ نتیجه ای یافت نشدمشاهده همه نتایج