(۱۳۹۴/۱۰/۳۰, ۱۱:۳۰ ق.ظ)hamidreza2000 نوشته: مرسی از راهنماییت رفیق
فقط یک مشکل یه جایی گفتی بیا یه لیست ویو بساز (باتن نمیشه؟؟) بعد مقدار کلیک شده رو بیار تو صفحه بعد استرینگ مربوطه رو فراخوانی کن میشه در باره کمکم کنید میشه اگه زحمت نیس با کد کمکم کنبد
سلام دوست عزیز چرا باتن هم میشه و اگه مبتدی هستید باتن میتونه دستتون رو برای زیباسازیش بازتر بزاره ولی خوب لیست ویو خیلی راحتر از آب در میاد.
ببینید روش کار به این صورته که مثلا شما یک اکتیویتی برای نمایش موضوع ها میسازید بعد تمام موضوع هاتون روتو فایل string قرار میدید و برای هر کدوم یه اسم میذارید بعد از صفحه قبل برای هر کدوم از باتن هاتون یک setOnClickListener معرفی میکنید.
به این صورت:
ببینید روش کار به این صورته که مثلا شما یک اکتیویتی برای نمایش موضوع ها میسازید بعد تمام موضوع هاتون روتو فایل string قرار میدید و برای هر کدوم یه اسم میذارید بعد از صفحه قبل برای هر کدوم از باتن هاتون یک setOnClickListener معرفی میکنید.
به این صورت:
کد پیاچپی:
Button b = (Button) findViewById(R.id.button1);
b.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// your code
}
});
بعد تو قسمتی که نوشته your code باید یک put extraبرای هر کدوم از باتن هات تعریف کنی که یک مقدار که همون اسم رشته مورد نظر برای مطلب مربوط به اون باتن هست رو به اکتیویتی که قبلش برای نمایش مطالب ساختیم انتقال بده!!
به این صورت:
کد پیاچپی:
String n;
n= نام رشته مورد نظر ;
Intent s=new Intent(Main.this,Page2.class);
s.putExtra("geted", n);
startActivity(s);
overridePendingTransition (0, 0);
که اینجا Main اسم اکتیویتی فعلی و Page2 هم نام اکتیویتی نمایش دهنده مطالب هستش. و یک رشته String هم تعریف کردیم به نام n که نام رشته ای که قراره تو فایل string فراخوانی بشه رو تو خودش ذخیره کرده.
تا اینجا یاد گرفتیم چطور نام رشته مورد نظر رو به وسیله یک باتن به اکتیویتی مورد نظر انتقال لدیمُ حالا باید بریم سر اصل مطلب یعنی چگونگی نمایش هر مطلب در اون اکتیویتی.
خب تو لایه گرافیکی اکتیویتی مورد نظر یک TextView بسازید. و برای دریافت مقدار string فرستاده شده از طریق putExtra یک getExtra به صورت زیر تعریف میکنیم:
کد پیاچپی:
Bundle extra=getIntent().getExtras();
String n;
n=extra.getString("geted");
و بعدش تکست ویو رو به صورت زیر تعریف میکنیم:
کد پیاچپی:
TextView tv = (TextView) findViewById(R.id.textView1);
خب اینجا یک تکست ویو داریم به اسم tv که قراره متن مورد نظر رو از فایل string فراخوانی کرده و درش نمایش بدیم.برای نمایش یک متن در تکست ویو با کدهای جاوا از کد زیر استفاده میکنیم.
کد پیاچپی:
tv.setText(...);
در اینجا یک String تعریف میکنیم به نام items که برابره با n که در اینجا items نام رشته مورد نظر در فایل string هستش.به این صورت:
کد پیاچپی:
String[] items = n;
n همون مقدار دریافتی از اکتیویتی قبله و برای نمایش اون رشته string در تکست ویو اینجوری عمل میکنیم:
کد پیاچپی:
tv.setText(items);
دوست عزیز فک کنم یکم سخت توضیح دادم ولی خب اگه دانش برنامه نویسیتون خوب باشه راحت میتونید از کدهای داده شده طبق نیاز خودتون استفاده کنید بازم اگه مشکلی بود بنده در خدمتم.
موفق باشید...