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

باسلام و عرض خسته نباشید

میشه بگید که چطوری میشه در spinner چند تا دکمه بسازیم و سپس با کلیک به دکمه اول به یک صفحه مثلا 1 برود و در دکمه دوم به صفحه دوم برود و به همین صورت .

ممنون می شوم سریع جوابم را بدهید

پاسخ ها

sokanacademy forum
کاربر سکان آکادمی 8 سال پیش

سلام من سوالت را این طور فهمیدم،که یک اسپینر می خوای تعریف کنی با سه تا گزینهِ(یعنی یگ منوی دراپ دون)دارد،حالا باید یک با کلیک روی هر کدام به یک اکتیویتی جدید برود. اول برو به لینک زیر منودارپ دون مورد نظر خودتو بساز:اصلا سخت نیست دوتا کلاس تعریف کرده http://www.tutorialspoint.com/android/android_spinner_control.htm بعد که راهش انداختی،یک تگه کد خیلی مهمه،یعنی وقتی کلیک شد چه رویدادی انجام شود:

public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { // On selecting a spinner item String item = parent.getItemAtPosition(position).toString(); // Showing selected spinner item Toast.makeText(parent.getContext(), "Selected: " + item, Toast.LENGTH_LONG).show();

حالا باید اینجا یک متدی تعریف کنی که می خوای اکتیوتی جدید را باز کند.امیدوارم تا اونجا خوب پیش امده باشی

final Intent intent; switch(position){ case 1: intent = new Intent(CurrentActivity.this, YourNewActivity.class); break; case 2: intent = new Intent(CurrentActivity.this, YourNewActivity1.class); break; } startActivity(intent);

یک اینتنت تعریف کردیم،ساختار یک سوییچ دارد می گه کیس 1 فلان اکتیویتی باز کن و...................کیس 2 و......... برای اپشن مورد استفاده در کیس اینجا تو می توانی از نام رشته ایتم استفاده کنی.......... اینم یعنی شروع اکتیویتی مد نظر startActivity(intent); برای ساختن یک دکمه که با کلیک روی ان یک اسپینر باز بشه این سورس خوبه http://stackoverflow.com/questions/13552081/how-do-i-make-a-button-to-create-a-new-spinner-on-click

sokanacademy forum
کاربر سکان آکادمی 8 سال پیش
باسلام و تشکر از پاسخگویی عالیتان خیلی ممنونم از پاسخگویی عالیتان و مشکلم حل شد فقط یک سوال گفتید می تونم به جای case ها نام رشته ها را بنویسم؟ باتشکر
sokanacademy forum
کاربر سکان آکادمی 8 سال پیش
case option یعنی اینجا چند تا کیس داریم،که به جای اپشن می شه نام یکی از منو های مورد نظرت بنویسی: case menu1 open activity1 case menu2 open activity 2
sokanacademy forum
کاربر سکان آکادمی 8 سال پیش

باسلامی مجدد من کدها را نوشتم ولی در بخش startActivity(intent); خطا می گیرد .لطفا راهنمایی ام کنید کد هایم به شکل زیر است (جاوا):

public class Irancel extends MainActivity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // Spinner element Spinner sp1 = (Spinner) findViewById(R.id.sp1); // Spinner click listener sp1.setOnItemSelectedListener((AdapterView.OnItemSelectedListener) this); // Spinner Drop down elements List categories = new ArrayList(); categories.add("@string/Preparation_of_charging_through_the_MTN_SMS_sending"); categories.add("@string/i_2"); categories.add("@string/i_1_3"); categories.add("@string/i_1_4"); // Creating adapter for spinner ArrayAdapter dataAdapter = new ArrayAdapter(this, android.R.layout.simple_spinner_item, categories); // Drop down layout style - list view with radio button dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); // attaching data adapter to spinner sp1.setAdapter(dataAdapter); } @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { // On selecting a spinner item String item = parent.getItemAtPosition(position).toString(); // Showing selected spinner item Toast.makeText(parent.getContext(), "انتخاب کنید" + item, Toast.LENGTH_LONG).show(); // final Intent intent; switch(position){ //go to the page = i_1 case 1: intent = new Intent(Irancel.this, i_1.class); break; //go to the page = i_2 case 2: intent = new Intent(Irancel.this, i_2.class); break; //go to the page = i_1_3 case 3: intent = new Intent(Irancel.this, i_1_3.class); break; //go to the page = i_1_4 case 4: intent = new Intent(Irancel.this, i_1_4.class); break; //go to the page = i_1_5 case 5: intent = new Intent(Irancel.this, i_1_5.class); break; //go to the page = i_1_6 case 6: intent = new Intent(Irancel.this, i_1_6.class); break; } startActivity(intent); } public void onNothingSelected(AdapterView<?> arg0) { // TODO Auto-generated method stub } }

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

sokanacademy forum
کاربر سکان آکادمی 8 سال پیش
تا اینجایی که حافظه من یاری می کنه برای نام گذاری از روش پاسکال وcamel case استفاده کنی،بهتر می بود. این لیک می گه بهتر ه از اندر اسکور استفاده نشود درنام گذاری اکتیویتی.... under score http://www.juce.com/forum/topic/android-activity-class-names-underscores-and-hair-loss
sokanacademy forum
کاربر سکان آکادمی 8 سال پیش

باسلامی مجدد این ارور را می دهد :(مربوط به کد

:startActivity(intent);) variable 'intent' might not' have been initialized

ممنونم می شوم جوابم را بدهید

sokanacademy forum
کاربر سکان آکادمی 8 سال پیش

فایل های مورد نیاز را که ایمپورت کردیimport android.content.Intent; اررر داره می گه این خط مقدار دهی اولیه نشده،کلاس ها را نامش چک کن روش غیر صریح اینتنت اینه

// Explicit Intent by specifying its class name Intent i = new Intent(FirstActivity.this, SecondAcitivity.class); // Starts TargetActivity startActivity(i);

نام کلاس ها هم چک شود به این اموزش هم مراجعه شود http://www.tutorialspoint.com/android/android_intents_filters.htm

sokanacademy forum
کاربر سکان آکادمی 8 سال پیش
سلام سعی کنید همیشه ارر را هم بفرستید.ارر ها راهنمای ما هستند.این سورس را چک کنید. http://stackoverflow.com/questions/19925136/spinner-which-launch-different-activity-with-each-item
sokanacademy forum
کاربر سکان آکادمی 8 سال پیش
باسلام و تشکر فراوان خیلی خیلی ممنونم ان مشکلم حل شد ولی یک سوال دارم: چطوری می شود در یک layout دو تا spinner ایجاد کرد؟ ممنونتان می شوم اگر جوابم را بدهید
sokanacademy forum
کاربر سکان آکادمی 8 سال پیش
خیلی ممحون پاسخم را پیدا کردم
online-support-icon