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

            تبادل اطلاعات بین اکتیویتی ها با اینتنت (Intent)

            • صفحه نخست
            • مدرسه ی تجاری اپ آموزش اندروید
            • تبادل اطلاعات بین اکتیویتی ها با اینتنت (Intent)
            آموزش SQL Server
            آموزش SQL Server – قسمت شانزدهم
            14 خرداد 1395
            آموزش برنامه نویسی اندروید
            فرگمنت fragment در اندروید – برنامه نویسی اندروید – قسمت شانزدهم
            19 خرداد 1395
            منتشر شده توسط خانم منطق
            آموزش برنامه نویسی اندروید

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

            تبادل اطلاعات بین اکتیویتی ها با اینتنت ، در قسمت چهاردهم آموزش برنامه نویسی اندروید مبحث بازگرداندن نتایج از اینتنت را آموزش داده ایم حال در این آموزش مبحث روش کار ارسال اطلاعات از یک اکتیویتی به اکتیویتی دیگر را که یکی دیگر از قابلیت های مهم برنامه نویسی اندروید می باشد را آموزش داده ایم.

            تبادل اطلاعات بین اکتیویتی ها با اینتنت – آموزش برنامه نویسی اندروید – قسمت پانزدهم

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

            ارسال مقدار به اکتیویتی دیگر با از شی Intent

            علاوه بر امکان دریافت دیتا که در آموزش قبل توضیح دادیم میتوان به یک اکتیویتی دیتا نیز ارسال کرد (ارسال مقدار به اکتیویتی دیگر). برای مثال میتوان در مثال قبل یک متن پیش فرض در EditText قرار داد و میتوان برای انجام این کار از شی Intent جهت ارسال دیتا به اکتیویتی استفاده کرد.

            در مثال زیر روش تبادل اطلاعات بین اکتیویتی ها را مشاهده می کنید. پروژه جدیدی به نام PassingData ایجاد کرده و طبق کدنویسی زیر در فایل activity_main.xml یک Button یا دکمه ایجاد میکنیم

            <Button
            	android:id="@+id/button1"
            	android:layout_width="wrap_content"
            	android:layout_height="wrap_content"
            	android:text="Click to go to the second Activity"
            	android:onClick="onClick" />
            

            حال در فولدر res/layout یک فایل جدید به نام secondactivity.xml ایجاد کرده و طبق کدنویسی زیر یک عبارت و یک دکمه تعیین میکنیم

            <?xml version="1.0" encoding="utf-8"?>
            <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
            	android:layout_width="fill_parent"
            	android:layout_height="fill_parent"
            	android:orientation="vertical">
            
            	<TextView
            		android:layout_width="fill_parent"
            		android:layout_height="wrap_content"
            		android:text="welcome to second Activity"/>
            
            	<Button
            		android:id="@+id/button1"
            		android:layout_width="wrap_content"
            		android:layout_height="wrap_content"
            		android:text="click to return to main activity"
            		android:onClick="onClick2" />
            </LinearLayout>
            

            حال یک کلاس جدید به نام SecondActivity ایجاد کرده و محتویاتش را چنین کدنویسی میکنیم

            package com.example.passingdata;
            import android.app.Activity;
            import android.content.Intent;
            import android.net.Uri;
            import android.os.Bundle;
            import android.view.View;
            import android.widget.*;
            public class SecondActivity extends Activity {
            	@Override
            	public void onCreate(Bundle savedInstanceState)
            	{
            		super.onCreate(savedInstanceState);
            		setContentView(R.layout.secondactivity);
            		
            		//--get the data passed in using getStrigExtra()--
            		Toast.makeText(this, getIntent().getStringExtra("str1"),
            		Toast.LENGTH_SHORT).show();
            		
            		//--get the data passed in using getIntExtra--
            		Toast.makeText(this, Integer.toString(getIntent().getIntExtra("age1", 0)),
            		Toast.LENGTH_SHORT).show();
            		
            		//--get the Bundle passed in--
            		Bundle b = getIntent().getExtras();
            		
            		//--get the data using the get String()--
            		Toast.makeText(this, b.getString("str2"), Toast.LENGTH_SHORT).show();
            		
            		//--get the data using the getInt()--
            		Toast.makeText(this, Integer.toString(b.getInt("age2")),
            		Toast.LENGTH_SHORT).show();
            	}
            	public void onClick2(View v)
            	{
            		//--use an Intent object to return data--
            		Intent i=new Intent();
            		
            		//--use the putExtra() method to return some value..--
            		i.putExtra("age3", 45);
            		
            		//--use the setData() method to return some value--
            		i.setData(Uri.parse("something passed back to main activity"));
            		
            		//--set the result with the OK and the Intent object--
            		setResult(RESULT_OK,i);
            		
            		//--destroy the current activity--
            		finish();
            	}
            }
            

            قسمت های زیر را نیز به فایل MainActivity.java اضافه کنید

            package com.example.passingdata;
            import android.app.Activity;
            import android.content.Intent;
            import android.os.Bundle;
            import android.view.View;
            import android.widget.Toast;
            public class MainActivity extends Activity {
            	@Override
            	protected void onCreate(Bundle savedInstanceState){
            		super.onCreate(savedInstanceState);
            		setContentView(R.layout.activity_main);
            	}
            	public void onClick(View v){
            		Intent i=new Intent("learn.PassingData.SecondActivity");
            		
            		//--use putExtra() to add new name/value pairs--
            		i.putExtra("str1", "this is a string");
            		i.putExtra("age1", 25);
            		
            		//--use a Bundle object to add new name/value pairs--
            		Bundle b=new Bundle();
            		b.putString("str2", "this is another string");
            		b.putInt("age2", 35);
            		
            		//--attach the Bundle object to the Intent object--
            		i.putExtras(b);
            		
            		//--start activity to get a result back--
            		startActivityForResult(i,1);
            	}
            	public void onActivityResult(int requestCode,int resultCode, Intent data){
            		
            		//--check if the request code id 1--
            		if(requestCode == 1){
            			
            			//-- if the result is OK--
            			if(resultCode == RESULT_OK){
            				
            				//--get the result using getIntExtra()--
            				Toast.makeText(this, Integer.toString(data.getIntExtra("age3", 0)),
            				Toast.LENGTH_SHORT).show();
            				
            				//--get the result using getData()--
            				Toast.makeText(this, data.getData().toString(), Toast.LENGTH_SHORT).show();
            			}
            		}
            	}
            }
            

            حال باید در manifest پروژه نیز اکتیویتی ایجاد شده را معرفی کنیم پس درون فایل AndroidManifest.xml کدهای پررنگ شده زیر را اضافه میکنیم

            <activity
            	android:name=".MainActivity"
            	android:label="@string/app_name" >
            	<intent-filter>
            		<action android:name="android.intent.action.MAIN" />
            		<category android:name="android.intent.category.LAUNCHER" />
            	</intent-filter>
            </activity>
            <activity
            	android:label="Second Activity"
            	android:name=".SecondActivity">
            	<intent-filter>
            		<action android:name="learn.PassingData.SecondActivity" />
            		<category android:name="android.intent.category.DEFAULT" />
            	</intent-filter>
            </activity>
            

            حال میتوان برنامه را اجرا و نتیجه را مطابق شکل زیر مشاهده کرد

            تبادل اطلاعات بین اکتیویتی ها
            تبادل اطلاعات بین اکتیویتی ها

            روش کار ارسال اطلاعات از یک اکتیویتی به اکتیویتی دیگر

            این برنامه مهمترین روش تبادل اطلاعات بین اکتیویتی ها با اینتنت را نمایش میدهد.ابتدا میتوان از متد ()putExtra شی Intent برای افزودن مقادیر به صورت دیگشنری استفاده نمود

            //--use putExtra() to add new name/value pairs--
            i.putExtra("str1", "this is a string");
            i.putExtra("age1", 25);
            

            کد بالا دوجفت نام/مقدار را به شی Intent اضافه میکند که یکی از آنها string و دیگری integer است  در واقع شکل کلی این متد بدین صورت است putExtra(string (name, value که برای value نوع ای مختلفی میتوان استفاده کرد.

            علاوه بر استفاده از متد ()putExtra همچنین میتوان یک شی Bundle ایجاد کرده و سپس آن را با استفاده از متد ()putExtra پیوست داد. تصور کنید که شی Bundle یک شی دیگشنری است. این شی حاوی چندین جفت نام/مقدار است. قطعه کد زیر یک شی Bundle ایجاد کرده و دو جفت نام/مقدار به آن اضافه کرده و با استفاده از دستور اخر به شی  Intent پیوست داده شده.

            //--use a Bundle object to add new name/value pairs--
            Bundle b=new Bundle();
            b.putString("str2", "this is another string");
            b.putInt("age2", 35);
            
            //--attach the Bundle object to the Intent object--
            i.putExtras(b);
            

            در اکتیویتی دوم برای دریافت اطلاعات ارسال شده با استفاده از شی Intent ابتدا میبایستی شی Intent را با استفاده از متد ()getIntent دریافت کنیم سپس متد ()getIntExtra را جهت دربافت مقادیر Integer که توسط متد ()putExtra افزوده شده بودند فراخوانی کنیم (آرگومان دوم مقدار پیش فرض برای مواقعی است که به ازای نام مقداری وجود ندارد)

            //--get the data passed in using getIntExtra--
            Toast.makeText(this, Integer.toString(getIntent().getIntExtra("age1", 0)),
            Toast.LENGTH_SHORT).show();
            

            برای مقادیر رشته ای نیز از متد ()getStringExtra استفاده میکنیم.

            برای دریافت شی Bundle از متد ()getExtra استفاده میکنیم

            //--get the Bundle passed in--
            Bundle b = getIntent().getExtras();
            

            و برای استخراج نام/مقدار ها به صورت تکی از تابع مناسب آن استفاده میکنیم مثلا ()getString و ()getInt

            راه دیگر برای ارسال دیتا به اکتویتی دیگر استفاده از متد ()setData است

            //--use the setData() method to return some value--
            i.setData(Uri.parse("something passed back to main activity"));
            

            معمولا از متد ()setData مواقعی استفاده میکنیم که بخواهیم Intent عملیاتی را انجام دهد(برای مثال ارسال یک URL به مرورگر خود اندروید جهت نمایش صفحه وب که در ادامه آموزشات ببه این موضوع میپردازیم)برای دریافت دیتایی که با استفاده از متد ()setData فرستاده شده از متد ()getData استفاده میکنیم

            //--get the result using getData()--
            Toast.makeText(this, data.getData().toString(), Toast.LENGTH_SHORT).show();
            

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

            1. مقدمه ای بر اندروید
            2. آموزش زبان جاوا برای اندروید
            3. آموزش شی گرایی در جاوا
            4. کلمات کلیدی در جاوا
            5. اینترفیس (Interface) در جاوا
            6. آموزش نصب اکلیپس (Eclipse)
            7. ساخت پروژه اندروید با اکلیپس
            8. ماشین مجازی اندروید – آموزش شبیه ساز اندروید
            9. آموزش اکتیویتی در اندروید
            10. ایجاد اکتیویتی (Activity) در اندروید و کار با اکتیویتی ها
            11. اعمال استایل بر روی اکتیویتی در اندروید
            12. ProgressDialog ها – آموزش ProgressDialog در اندروید
            13. اینتنت ها در اندروید و جابجایی بین اکتیویتی ها با اینتنت
            14. کار با Intent و دریافت نتیجه از اکتیویتی با اینتنت
            15. تبادل اطلاعات بین اکتیویتی ها با اینتنت
            اشتراک گذاری

            پست های مرتبط

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

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

            30 بهمن 1400

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


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

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

            30 بهمن 1400

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


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

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

            27 بهمن 1400

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


            ادامه مطلب

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

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

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

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

             
            کلیک کنید

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

            • 9 اسفند 1401

              مهری اصغری نظر در پیاده سازی اولین پروژه با فلاتر Flutter

            • 26 آبان 1401

              سجاد نظر در پروژه مدیریت سیستم مدرسه با سی شارپ و sql server

            • 7 خرداد 1401

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

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

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

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