الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كيفية إنشاء Activties و التنقل بينهم

بدأه alaa_mokhtar في 13 نوفمبر 2011 · 4 رد · 1,396 مشاهدة · في Android
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

يا جماعة

انا فى طور بداية انشاء مشروع ولدى بعض الاسئلة ببداية الامر وهم

1-كيفية عمل عدة فورم والتنقل بينهم

2-كيفية عمل لست اختار من ببنهم للتنقل بين الفورم

3- كيف اقوم بحفظ البيانات المدخلة بمربعات النص فى ملف نصى

#2

1- بالنسبة للسؤال الأول : يمكنك إستخدام startActivityt أو startactivityforresult

1-1 startActivity: تتيح لك التنقل على شكل سلسلة ، مثال التنقل من form 1 إلى form 2

مثال :

Intent changeActivity = new Intent(Form1.this,Form2.class);
        startActivity(changeActivity);

1-2 startactivityforresult : تتيح لك التنقل على شكل دائره ، مثال الإنتقال من Form1 إلى Form2 ـ أجراء عملية فى Form2 و إرجاع الناتج إلى Form 1

مثال:

Intent changeActivityAngGetResult = new Intent(Form1.this,Form2.class);
        changeActivityAngGetResult.putExtra("parameters", "This is simple extra paramter");
        startActivityForResult(changeActivityAngGetResult, 100);

يمكن إستبدال الرقم 100 باى رقم. هذا الرقم يسمى ال requestCode، بستخدم فى إسترجاع القيم

المثال السابق يقوم بأستدعاء Form2 ونتظار الناتج

فى الكود الخاص ب Form2 :

Intent intent= getIntent();
        String msg = intent.getStringExtra("parameters"); //Get result extra data from prvious activty
        msg += ", Add more stuff"; // Do something to it
        intent.putExtra("returnedData", msg); //
        setResult(RESULT_OK, intent);//Send the result back
        finish();//Finish this activty

فى الكود الخاص ب Form1 ، يجب عليك إستخدا الدالة onActivityResult

مثال:

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    	super.onActivityResult(requestCode, resultCode, data);

    	if(resultCode == RESULT_OK){
    		 //Check the it is from the same activity. 
    		//this number must match the number we set in  startActivityForResult
    		//startActivityForResult(changeActivityAngGetResult, 100);
    		if(requestCode == 100){
    			  String msg = data.getStringExtra("returnedData");
    			  Toast.makeText(getBaseContext(), "I revied this: " + msg, Toast.LENGTH_SHORT).show();
    		}
    	}
    }

--------------------------------------------

بالنسبة للسؤال الثانى :

يمكنك إستخدا ال Spinner لعمل ال list

راجع هذا الرابط :

http://developer.android.com/resources/tutorials/views/hello-spinner.html

-------------------------------------

بالنسبة للسؤأل الثالث

سافترض أنك تريد عمل الملف النصى فى كرت الذاكره sdcard

يمكنك عمل التالى :

File sdCardDir = Environment.getExternalStorageDirectory(); //Path to SDCard root        
        File myApplicaionDir = new File(sdCardDir.getAbsoluteFile() + "/Test"); //Create Folder Test in SdCard        
        myApplicaionDir.mkdir();        
        File dataFile = new File(myApplicaionDir,"testfile.txt"); //Create testfile.txt in Test Folder

        try {//Write to the file
			FileOutputStream fOut = new FileOutputStream(dataFile);
			OutputStreamWriter myWitter = new OutputStreamWriter(fOut);
			myWitter.append(textView.getText().toString());
			myWitter.close();
			fOut.close();
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}

ستحتاج لل Permission التالى :

android.permission.WRITE_EXTERNAL_STORAGE
2
#3

الف الف شكر على رد حضرتك

انا جربت اجابة حضرتك بخصوص السؤال الاول والحمد لله نجحت اما السؤال الثانى نفذت الخطوات ولكن تظهر خطأ والسؤال الثالث فى مرحلة التطبيع

وإن شاء الله سوف ارد على حضرتك بعد التطبيق

والف شكر للمرة الثانية

#4

بالنسبة للسؤال الثاني ، هناك حلول أخرى غير حل Spinner الذي اقترحه @abolkog ، مثل ListActivity ، GridView ، وغيرها أرى أنها أسهل في التعامل على الموبايل لو أردتها كأداة نقل بين Activity و آخر ، مثلاً هناك شيء اسمه ListActivtiy ، من الممكن استخدامها لو كان لديك قائمة وتريد الاختيار منها ،

مثال :

http://android-er.blogspot.com/2011/03/listactivity-with-two-list.html

post-42837-021305200 1321513519_thumb.pn

الشيء الآخر ، من الأفضل نسيان مصطلحات و ثقافة Visual basic ، مثل Forms و نحوه ، حيث Android مبني بطريقة أذكى ، وتعلمه من الصفر دون أي رواسب قديمة تجعل من المبرمج مبرمج " قوي " ، حيث design patterns كثيرة ستتعلمها مع Android ، لذلك انسى Visual basic ومصطلحاته ..

المرفقات
AndroidDualListActivity_01.png
1

logo1.png تطبيق طمأنينة ، نسخة بيتا على أندرويد

عبدالله الشمّري - Al-Shammari

CodingAlone.com

twitter @abshammeri

abshammeri AT gmail.com

github : abshammeri

#5
Abdullah.Alshammeri كتب:

بالنسبة للسؤال الثاني ، هناك حلول أخرى غير حل Spinner الذي اقترحه @abolkog ، مثل ListActivity ، GridView ، وغيرها أرى أنها أسهل في التعامل على الموبايل لو أردتها كأداة نقل بين Activity و آخر ، مثلاً هناك شيء اسمه ListActivtiy ، من الممكن استخدامها لو كان لديك قائمة وتريد الاختيار منها ،

مثال :

http://android-er.blogspot.com/2011/03/listactivity-with-two-list.html

post-42837-021305200 1321513519_thumb.pn

الشيء الآخر ، من الأفضل نسيان مصطلحات و ثقافة Visual basic ، مثل Forms و نحوه ، حيث Android مبني بطريقة أذكى ، وتعلمه من الصفر دون أي رواسب قديمة تجعل من المبرمج مبرمج " قوي " ، حيث design patterns كثيرة ستتعلمها مع Android ، لذلك انسى Visual basic ومصطلحاته ..

بعد أذن صاحب الموضوع :

السلام عليكم ورحمه الله وبركاته :

هذه الطريقة جدا ممتازة ، لكن هل لديك بنفس طريقة او الاخوه الاعضاء من ListActivity to ListActivity or Activityclass او رابط ممكن نستفيد به

بتوضيح اكثر بمعنى

عندما اضغط على العنصر شهر April ( كما هو موضح بالصورة التي ارفقت) انتقل الى يوم saturday.java.class new يعني كلاس جديد خاص بـ يوم السبت او يوم الاحد ...

ارجوا المساعدة ،

مواضيع مشابهة