PDA

View Full Version : ایجاد intent



mehran788
دوشنبه 06 بهمن 1393, 21:57 عصر
سلام. خسته نباشید
من به شکل زیر یک اینتن ساختم ولی خطا میده و قبول نمی کنه. لطفا منو راهنمایی کنید.
public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);
setContentView(R.layout.main);


EditText matn = (EditText) findViewById(R.id.editText1);
Button d = (Button) findViewById(R.id.button1);


d.setOnClickListener(new OnClickListener() {


@Override
public void onClick(View v) {}


intent mafhoom = new intent(this, Dovomi.class);
});
}

اینم متن خطا که واسه خط 16 هست


دو بار این خطا رو دادهintent cannot be resolved to a type



خیلی ممنون

NeoFighT
دوشنبه 06 بهمن 1393, 22:35 عصر
intent mafhoom = new intent(this, Dovomi.class);

رو به

intent mafhoom = new intent(MainActivity.this, Dovomi.class);

تغییر بدین.

mehran788
دوشنبه 06 بهمن 1393, 22:49 عصر
تغییرا دادم ولی هیچ فرقی نکرد

Nevercom
دوشنبه 06 بهمن 1393, 23:14 عصر
پارامتر اول Intent از جنس Context هست. کد شما در کلاس داخلی نوشته شده، کلمه ی کلیدی this به کلاس والد اشاره می کنه، که در این مورد، این کلاس از جنس Context نیست.
روشی که دوستمون گفتن درسته (با فرض اینکه اسم کلاس اصلی MainActivity باشه)، اصولاً نباید خطایی دریافت کنید. اما از اونجایی که با intent ایجاد شده کار خاصی هم انجام نمیدین، با کلیک روی Button نباید خطایی دریافت کنید، و کار خاصی هم انجام نمیشه.

gjmkdyttyhujk
سه شنبه 07 بهمن 1393, 00:20 صبح
احتمالا دوستمون در انتخاب نوع اینتنت اشتباه کردن. یعنی اینکه پارامترهاش ممکنه متفاوت باشه. باید پارامترهاش هم متناظر باشه.

skkhossein
سه شنبه 07 بهمن 1393, 00:35 صبح
شما برای اینکه بین اکتیویتی ها سویچ کنید اومدین و از اینتنت استفاده کردین
اما آیا اکتیویتی Dovomi و فایل xml متناظر با اون رو ایجاد کردین؟

Nevercom
سه شنبه 07 بهمن 1393, 00:47 صبح
ضمن اینکه Intent درست هست، نه intent

masudafsar
سه شنبه 07 بهمن 1393, 02:22 صبح
همون طور که اکثرا گفتن کد بصورت زیره

Intent intent = new Intent(FirstActivity.this, SecondActivity.class);

FirstActivity اسم کلاس اکتیویتی مبدا
SecondActivityاسم کلاس اکتیویتی مقصد

اگر هم تو فرگمنت داری از این کد استفاده می کنی، با کد زیر به کلاس اکتیویتی دسترسی پیدا می کنی:

this.getActivity()

masudafsar
سه شنبه 07 بهمن 1393, 02:26 صبح
دو بار این خطا رو دادهintent cannot be resolved to a type


از همین خظا میشه متوجه شد که کلاسی به اسم intent وجود نداره. باید از Intent استفاده کنی (حرف اول بزرگ)

mehran788
سه شنبه 07 بهمن 1393, 15:18 عصر
دوستان خیلی ممنون که وقت گذاشتین