انجمن سایت کلیدستان


رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
مشکل فراخونی دیتابیس (در برنامه نویسی اندروید)

مشکل فراخونی دیتابیس (در برنامه نویسی اندروید)

#5
اول از همه دوتا آرایه رشته  به صورت سراسری در سطح کلاس تعریف کنید
کد پی‌اچ‌پی:
String [i]  title;
String [iname
پس من فرض میکنم شما دیتابیس ساختید و مشکلی ندارید..حال من فرض میکنم دیتابیس شما  2 تا ستون title و name دارد.. ابتدا یه تابع تعریف می کنیم به نام get_values که وظیفه داره مقادیر رو از دیتابیس بگیره و داخل دوتا آرایه قرار بده...
کد پی‌اچ‌پی:
public void get_values()
{
  
SQLiteDatabase dataBase=openOrCreateDatabase(pathMODE_PRIVATEnull);    
        
Cursor cursor;
        
cursor=dataBase.rawQuery("SELECT title, name FROM T1;"null);
        
title=new[cursor.getcount]; //ساختن آرایه به اندازه تعداد سطر دیتابیس
        
name=new[cursor.getcount];
int i=0;
//این حلقه مقادیر رو از دیتابیس میگیرد و وارد آرایه ها میکند
 
while(cursor.moveToNext())
  {
            
title[i]=cursor.getString(cursor.getColumnIndex("title"));
                       
name[i]=cursor.getString(cursor.getColumnIndex("name"));
   
i++;
 
  }

حالا کافیه این مقادیر رو با کلیک برروی هر آیتم از لیست ویو به اکتیویتی دوم مثلا اکتیوتی secound برود و مقادیر name و title نمایش دهد.
پس برای لیست ویو یک شنونده کلیک شدن آیتم مشخص میکنیم
کد پی‌اچ‌پی:
@Override
                   
public void onItemClick(AdapterView<?> arg0, View arg1, int position, long arg3) {
                       Intent intent=new Intent(Main.this,Secound.class);
                       intent.putExtra("title", title[position]);
                       intent.putExtra("name", name[position]);
                       startActivity(intent);
                       
                       
               }); 
در ساختار بالا نکته ی خیلی مهمی که باید بهش توجه کنید..متغیر یا آرگومان سوم هست که position نام دارد.این متغییر شماره آیتمی که کلیک شده است را درخود نگه میدارد...یعنی وقتی آیتم 3کلیک میشود مقدار 3 در متغییر ذخیره میشود...
پس با توجه به این نکته ..وقتی آیتم سوم کلیک میشود ما باید title و name سوم را به اکتیوتی دیگر پاس بدهیم..با کد زیر که در ساختار بالا نوشته شده است.
کد پی‌اچ‌پی:
intent.putExtra("title"title[position]); 
intent.putExtra("name"name[position]); 
درساختار بالا دو رشته به اکتیویتی دیگر پاس دادیم...کافیه این مقادیر ارسالی رو در اکتیویتیsecound بگیریم..با ساختار زیر.در اکتیویتی Secound با دستوارت زیر دومقدر ارسالی را دریافت میکنیم.
کد پی‌اچ‌پی:
Intent intent=getIntent();
String title=intent.getString("title");
String name=intent.getString("name"); 

حالا شما میتوانید این دو رشته را در تکست ویوهای خود با متد زیر نمایش دهید
کد پی‌اچ‌پی:
my_text1.setText(title);
my_text2.setText(name); 

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


 
پاسخ
 سپاس شده توسط as125 ، admin


پیام‌های این موضوع
RE: مشکل فراخونی دیتابیس - توسط داش بهروز - ۱۳۹۳/۱۲/۲۳, ۰۸:۲۹ ب.ظ
RE: مشکل فراخونی دیتابیس - توسط as125 - ۱۳۹۳/۱۲/۲۴, ۱۲:۵۸ ق.ظ
RE: مشکل فراخونی دیتابیس - توسط داش بهروز - ۱۳۹۳/۱۲/۲۴, ۰۱:۵۲ ق.ظ
RE: مشکل فراخونی دیتابیس - توسط داش بهروز - ۱۳۹۳/۱۲/۲۴, ۰۲:۲۰ ق.ظ
RE: مشکل فراخونی دیتابیس - توسط as125 - ۱۳۹۳/۱۲/۲۴, ۰۷:۰۶ ق.ظ
RE: مشکل فراخونی دیتابیس - توسط داش بهروز - ۱۳۹۳/۱۲/۲۴, ۰۳:۱۹ ب.ظ

پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان