آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

نمایش آیتم های قبلی و بعدی از روی دیتابیس

underomeda  12 سال پیش  12 سال پیش
+2 0

سلام 

من  توی برنامه ام یه بانک اطلاعاتی  دارم ،یه لیست ویو هم که ایتم هارو در یک اکتیویتی نشون میده و روی هر ایتمی کلیک  میکنم متن کلی رو در اکتیوتی که activityshow نام داره  نمایش میده حالا می خوام در همین اکتیویتی یعنی ActivityShow  که یه textview  برای title و یک textview برای متن هست میخوام  یه دکمه بزارم ایتم های بعدی رو نمایش بده کسی هست کمک کنه؟درضمن دستورات بانک من در کلاس G هست.

 

0 0
حامد جان، اگر خودت سئوالی با عنوان «جواب نگرفتم مشکل کجاست» ببینی، می تونی متوجه شی که منظور سئوال چیه؟ تمیز بنویسیم. (12 سال پیش)
 برای این سوال 2 پاسخ وجود دارد.
پاسخ به سوال 
Alireza.b  12 سال پیش
+2 0

یک آرایه String (یا هر چیز دیگری) درست کنید و با select کردن جدول و با استفاده از do while تک تک row ها را از cursor به آرایه انتقال دهید.

یک فیلد سراسری با مقدار پیش فرض 0 نیز درست کرده و هر بار کلیک که شد، با متد get خانه مربوطه را از آرایه خوانده و یک عدد به فیلد سراسری اضافه کنید. به عنوان مثال:

private ArrayList<String> Name = new ArrayList<String>();
sqlite = db.getWritableDatabase(); Cursor Cursor = sqlite.rawQuery("select * from Table", null); Name.clear();
if(MaddahCursor.moveToFirst()) { do { Name.add(Cursor.getString(Cursor.getColumnIndex("name")));
} while (Cursor.moveToNext()); Cursor.close(); db.close(); sqlite.close(); }

حالا در onClick دکمه:

 btnClick.setOnItemClickListener(new OnItemClickListener() {
			@Override
			public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
					long arg3) {
				String current_Name = Name.get(i);
i++; } });
0 0
جواب نداد (12 سال پیش)
0 0
این روش درسته. شما متن خطا رو بگین. (12 سال پیش)
0 0
عمل نمیکنه (12 سال پیش)
0 0
خودم جواب گرفتم (12 سال پیش)
پاسخ به سوال 
MJ  12 سال پیش
+1 0

بستگی به ساختار برنامه ت راه حل زیاده

ساده ترین کار اینه که با یه query ساده به ازای شماره رکورد فعلی ، رکورد بعدی رو پیدا کنی

مثلا اگه الان رکورد با شماره 100 داره نشون داده میشه می تونی query بزنی رکورد 101 رو نشون بده (الیته این بهترین راه نیست و باید توجه کنی که اگه رکوردی دیلیت شد پیش بینی کنی.. مثلا بگی اولین رکورد با آی دی بزرگتر از 100 و...)

توی query زدن به حجم اطلاعاتی هم که لود می کنی توجه کن. همه ی گوشی ها یه محدودیت رم دارن که اگه ازش بیرون بزنی برنامه فورس کلوز میشه.

برا خود من پیش اومده بود با دوربین عکس می گرفتم و به صورت داینامیک داخل ایمیج ویو ها لود می کردم. بعد چند تا عکس مموری استفاده شده رو چک کردم، روی اس3 مینی بیشتر از فکر کنم 20 مگ فورس کلوز می داد، روی نوت 2 اگه اشتباه نکنم 45 مگ..

0 0
یه پیشنهاد اسکیو الی که به نظرم میرسه که حذف شده ها رو هم مد نظر میگیره اینه که بگی تمامی آی دی های بزرگتر از این که الان داری رو نشون بده و تو لیست اولین گزینه رو بعد از ASC کردن نمایش بده ! (12 سال پیش)

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .