رفتن به مطلب
  • 0

هنگ کردن برنامه ساخته شده


ruydarwatch

سوال

سلام.یه برنامه بانک پیامکی ساختم و یه دیتابیس آفلاین براش گذاشتم.خروجی گرفتم.اول که فقط 200 تا پیامک داشت مشکلی نداشت.الان که 1200 تا پیامک بهش اضافه کردم هنگ میکنه.خود برنامه خیلی کم حجم هست و خیلی سریع لود و فهرست بالا میاد.اما وقتی یکی از گزینه های داخل فهرست که میزنی گوشی هنگ میکنه و پیام میده برنامه متوقف شد.کجای کارم اشتباه هست؟ممنون

لینک ارسال
به اشتراک گذاری در سایت های دیگر

15 پاسخ به این سوال تاکنون داده شده است

ارسال‌های توصیه شده

ارور رو از قسمت لاگ بفرستید.

از عکس هم استفاده می کنید؟ از کدوم لیست ویو استفاده می کنید ؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 19 ساعت قبل، M-CAP7AIN گفته است :

ارور رو از قسمت لاگ بفرستید.

از عکس هم استفاده می کنید؟ از کدوم لیست ویو استفاده می کنید ؟

این ارور میاد.عکس هم توی برنامه نزاشتم.توی خود گوشی هم همین ارور میاد و برنامه بسته میشه

11111.jpg

لینک ارسال
به اشتراک گذاری در سایت های دیگر

خب لیمیت بزن براش نمشه این حجم ایتم یهو گرفت که هنگ میکنه

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در ۱ ساعت قبل، mohammad3250 گفته است :

خب لیمیت بزن براش نمشه این حجم ایتم یهو گرفت که هنگ میکنه

چجوری؟

میشه برام توضیح بدین؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 11 دقیقه قبل، M-CAP7AIN گفته است :

کد اون بخش که آیتم هارو به لیست اضافه می کنه رو بزارید

این کدهامه

Sub Activity_Create(FirstTime As Boolean)
	'Do not forget to load the layout file created with the visual designer. For example:
	Activity.LoadLayout("main")
	
	If File.Exists(File.DirInternal , "pm.db") = False Then
		File.Copy(File.DirAssets , "pm.db" , File.DirInternal , "pm.db")
	End If
	
	
	sql1.Initialize(File.DirInternal , "pm.db" , True)
	
	
	
	
	
End Sub

Sub Activity_Resume

End Sub

Sub Activity_Pause (UserClosed As Boolean)

End Sub

Sub Img1_Click
	Activity.RemoveAllViews
	Activity.LoadLayout("Fehrest")
	
	PageNum = 2
	
	Dim imgback As BitmapDrawable
	imgback.Initialize(LoadBitmap(File.DirAssets , "item.png"))
	ListFeh.SingleLineLayout.Background = imgback
	ListFeh.SingleLineLayout.ItemHeight = 10%Y
	ListFeh.SingleLineLayout.Label.Gravity = Gravity.CENTER
	ListFeh.SingleLineLayout.Label.TextSize = 16
	ListFeh.SingleLineLayout.Label.TextColor = Colors.RGB(160 , 94 , 11)
	ListFeh.SingleLineLayout.Label.Typeface = Typeface.LoadFromAssets("byekan.ttf")
	
	
	Dim Cur As Cursor
	Cur = sql1.ExecQuery("Select * From TblFehrest")
	Dim i As Int
	For i = 0 To Cur.RowCount - 1
		Cur.Position = i
		ListFeh.AddSingleLine2(Cur.GetString("Name"),Cur.GetString("ID"))
	Next
	
	
End Sub

Sub ListFeh_ItemClick (Position As Int, Value As Object)
	
	Activity.RemoveAllViews
	Activity.LoadLayout("Payamak")
	
	PageNum = 3
	
	Dim Cur As Cursor
	Cur = sql1.ExecQuery2("Select * From TblFehrest Where ID = ?" , Array As String(Value))
	Cur.Position = 0
	LblHead.Text = Cur.GetString("Name")
	ImgPic.SetBackgroundImage(LoadBitmapSample(File.DirAssets , Cur.GetString("Ax") , ImgPic.Width , ImgPic.Height))
	
	
	lv.Initialize(Me , "lv")
	Activity.AddView(lv.AsView , 1%X , 16%Y , 98%X , 80%Y)
	
	
	Cur = sql1.ExecQuery2("Select * From TblPayamak WHERE FehID = ?" , Array As String(Value))
	
	Dim i As Int
	For i = 0 To Cur.RowCount - 1
		Cur.Position = i
		Dim p1 As Panel
		p1.Initialize("p1")
		LblSample.Text = Cur.GetString("Matn")
		lv.Add(p1 , su.MeasureMultilineTextHeight(LblSample , LblSample.Text) + 75dip , "")
		p1.LoadLayout("Temp")
		PnlPayamak.Height = su.MeasureMultilineTextHeight(LblSample , LblSample.Text) + BtnCopy.Height + 30dip
		LblPayamakText.Text = Cur.GetString("Matn")
		LblPayamakText.Height = su.MeasureMultilineTextHeight(LblPayamakText , LblPayamakText.Text)
		LblPayamakText.Top = PnlPayamak.Top + 10dip
		BtnCopy.Top = LblPayamakText.Top + LblPayamakText.Height + 15dip
		BtnShare.Top = LblPayamakText.Top + LblPayamakText.Height + 15dip
		BtnLike.Top = LblPayamakText.Top + LblPayamakText.Height + 15dip
		BtnShare.Tag = Cur.GetString("Matn")
		BtnCopy.Tag = Cur.GetString("Matn")
		BtnLike.Tag = Cur.GetString("ID")
		
		If CheckAlaqe(Cur.GetString("ID")) = False Then
			BtnLike.SetBackgroundImage(LoadBitmap(File.DirAssets , "like.png"))
		Else
			BtnLike.SetBackgroundImage(LoadBitmap(File.DirAssets , "like - copy.png"))
		End If
		
	Next

	
End Sub

Sub BtnShare_Click

	Dim obj As View
	obj = Sender
	
	Dim Share As Intent
	Share.Initialize(Share.ACTION_SEND , "")
	Share.SetType("text/plain")
	Share.PutExtra("android.intent.extra.TEXT" , obj.Tag)
	Share.WrapAsIntentChooser("متن از چه طریقی ارسال شود؟")
	StartActivity(Share)

	
End Sub
Sub BtnCopy_Click
	
	Dim obj As View
	obj = Sender
	cb.setText(obj.Tag)
	ToastMessageShow("متن پیامک در حافظه موقت کپی شد" , False)
	
End Sub



Sub BtnLike_Click
	
	Dim obj As View
	obj = Sender
	
	If CheckAlaqe(obj.Tag) = False Then
		sql1.ExecNonQuery2("Update TblPayamak Set Alaqe = 1 Where ID = ?" , Array As String(obj.Tag))
		obj.SetBackgroundImage(LoadBitmap(File.DirAssets , "like - copy.png"))
		ToastMessageShow("پیامک مورد نظر به لیست علاقمندی اضافه شد" , False)
	Else
		sql1.ExecNonQuery2("Update TblPayamak Set Alaqe = 0 Where ID = ?" , Array As String(obj.Tag))
		obj.SetBackgroundImage(LoadBitmap(File.DirAssets , "like.png"))
		ToastMessageShow("پیامک مورد نظر از لیست علاقمندی حذف شد" , False)
	End If
	
	
End Sub

Sub CheckAlaqe (PayamakID As Int) As Boolean

	Dim cur As Cursor
	cur = sql1.ExecQuery2("Select * From TblPayamak WHERE ID = ?" , Array As String(PayamakID))
	cur.Position = 0
	
	If cur.GetString("Alaqe") = 1 Then
		Return True
	Else
		Return False
	End If

End Sub



Sub Activity_KeyPress (KeyCode As Int) As Boolean 'Return True to consume the event
	
	If KeyCode = KeyCodes.KEYCODE_BACK Then
	
		Select PageNum
			
			Case 1
				If Msgbox2("آیا از خروج اطمینان دارید؟" , "خروج" , "بله" , "خیر" , "" , Null) = DialogResponse.POSITIVE Then
					ExitApplication
				Else
					Return True
				End If
			
			Case 2
				Activity.RemoveAllViews
				Activity.LoadLayout("main")
				PageNum = 1
				Return True
				
			Case 3
				Img1_Click
				Return True
		
		End Select
	
	
	End If
	
	
End Sub


Sub Img2_Click

	
	Activity.RemoveAllViews
	Activity.LoadLayout("Payamak")
	
	PageNum = 2
	
	
	LblHead.Text = "لیست علاقمندی ها"
	ImgPic.SetBackgroundImage(LoadBitmapSample(File.DirAssets , "love.png" , ImgPic.Width , ImgPic.Height))
	
	
	lv.Initialize(Me , "lv")
	Activity.AddView(lv.AsView , 1%X , 16%Y , 98%X , 80%Y)
	
	Dim Cur As Cursor
	
	Cur = sql1.ExecQuery("Select * From TblPayamak WHERE Alaqe = 1")
	
	Dim i As Int
	For i = 0 To Cur.RowCount - 1
		Cur.Position = i
		Dim p1 As Panel
		p1.Initialize("p1")
		LblSample.Text = Cur.GetString("Matn")
		lv.Add(p1 , su.MeasureMultilineTextHeight(LblSample , LblSample.Text) + 75dip , "")
		p1.LoadLayout("Temp")
		PnlPayamak.Height = su.MeasureMultilineTextHeight(LblSample , LblSample.Text) + BtnCopy.Height + 30dip
		LblPayamakText.Text = Cur.GetString("Matn")
		LblPayamakText.Height = su.MeasureMultilineTextHeight(LblPayamakText , LblPayamakText.Text)
		LblPayamakText.Top = PnlPayamak.Top + 10dip
		BtnCopy.Top = LblPayamakText.Top + LblPayamakText.Height + 15dip
		BtnShare.Top = LblPayamakText.Top + LblPayamakText.Height + 15dip
		BtnLike.Top = LblPayamakText.Top + LblPayamakText.Height + 15dip
		BtnShare.Tag = Cur.GetString("Matn")
		BtnCopy.Tag = Cur.GetString("Matn")
		BtnLike.Tag = Cur.GetString("ID")
		
		If CheckAlaqe(Cur.GetString("ID")) = False Then
			BtnLike.SetBackgroundImage(LoadBitmap(File.DirAssets , "like.png"))
		Else
			BtnLike.SetBackgroundImage(LoadBitmap(File.DirAssets , "like - copy.png"))
		End If
		
	Next
	
End Sub

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

داخل حلقه های For از Sleep استفاده کنید. این مقدار رو کم و زیاد کنید ببینید به نتیجه میرسید.

مانند زیر :

	For i = 0 To Cur.RowCount - 1
		Cur.Position = i
		ListFeh.AddSingleLine2(Cur.GetString("Name"),Cur.GetString("ID"))

		Sleep(70)

	Next

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 23 ساعت قبل، M-CAP7AIN گفته است :

داخل حلقه های For از Sleep استفاده کنید. این مقدار رو کم و زیاد کنید ببینید به نتیجه میرسید.

مانند زیر :


	For i = 0 To Cur.RowCount - 1
		Cur.Position = i
		ListFeh.AddSingleLine2(Cur.GetString("Name"),Cur.GetString("ID"))

		Sleep(70)

	Next

 

جواب نمیده.باز هم فورس کلوز میزنه.چجوری میتونم لیمیت بدم که همه دیتابیس آفلاینم با هم لود نشه و 10 تا 10 تا لود بشه؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

10 : 10 تا 10 تا از سطر را رو میگیره

15 : از 16 به بعد ( شروع سطر )

 

پوزیشن لیست رو بگیرید اگه به انتها رسید مقدار 15 رو افزایش بدید.

 

Select * From TblPayamak WHERE Alaqe = '1' LIMIT 10 OFFSET 15

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 14 ساعت قبل، M-CAP7AIN گفته است :

10 : 10 تا 10 تا از سطر را رو میگیره

15 : از 16 به بعد ( شروع سطر )

 

پوزیشن لیست رو بگیرید اگه به انتها رسید مقدار 15 رو افزایش بدید.

 


Select * From TblPayamak WHERE Alaqe = '1' LIMIT 10 OFFSET 15

 

این کد و باید کجا بزارم؟

offset برای چی هست؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 11 ساعت قبل، ruydarwatch گفته است :

این کد و باید کجا بزارم؟

offset برای چی هست؟

این کد رو به کوئری هاتون باید اضافه کنید، offset آدرس شروع سطر.

داخل انجمن سرچ کنید 'لیمیت' یا از نمونه زیر استفاده کنید.

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

این کد و اضافه میکنم ارور میده!

Sub Img1_Click
	Activity.RemoveAllViews
	Activity.LoadLayout("Fehrest")
	
	PageNum = 2
	
	Dim imgback As BitmapDrawable
	imgback.Initialize(LoadBitmap(File.DirAssets , "item.png"))
	ListFeh.SingleLineLayout.Background = imgback
	ListFeh.SingleLineLayout.ItemHeight = 10%Y
	ListFeh.SingleLineLayout.Label.Gravity = Gravity.CENTER
	ListFeh.SingleLineLayout.Label.TextSize = 16
	ListFeh.SingleLineLayout.Label.TextColor = Colors.RGB(160 , 94 , 11)
	ListFeh.SingleLineLayout.Label.Typeface = Typeface.LoadFromAssets("byekan.ttf")
	
	
	Dim Cur As Cursor
	Cur = sql1.ExecQuery("Select * From TblFehrest  WHERE Alaqe"= '1' LIMIT 10 OFFSET 15)
	Dim i As Int
	For i = 0 To Cur.RowCount - 1
		Cur.Position = i
		ListFeh.AddSingleLine2(Cur.GetString("Name"),Cur.GetString("ID"))

	Next
	
	
End Sub

ارور invalid number of parentheses

ببخشید خیلی مبتدی هستم :-(

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 14 ساعت قبل، ruydarwatch گفته است :

این کد و اضافه میکنم ارور میده!


Sub Img1_Click
	Activity.RemoveAllViews
	Activity.LoadLayout("Fehrest")
	
	PageNum = 2
	
	Dim imgback As BitmapDrawable
	imgback.Initialize(LoadBitmap(File.DirAssets , "item.png"))
	ListFeh.SingleLineLayout.Background = imgback
	ListFeh.SingleLineLayout.ItemHeight = 10%Y
	ListFeh.SingleLineLayout.Label.Gravity = Gravity.CENTER
	ListFeh.SingleLineLayout.Label.TextSize = 16
	ListFeh.SingleLineLayout.Label.TextColor = Colors.RGB(160 , 94 , 11)
	ListFeh.SingleLineLayout.Label.Typeface = Typeface.LoadFromAssets("byekan.ttf")
	
	
	Dim Cur As Cursor
	Cur = sql1.ExecQuery("Select * From TblFehrest  WHERE Alaqe"= '1' LIMIT 10 OFFSET 15)
	Dim i As Int
	For i = 0 To Cur.RowCount - 1
		Cur.Position = i
		ListFeh.AddSingleLine2(Cur.GetString("Name"),Cur.GetString("ID"))

	Next
	
	
End Sub

ارور invalid number of parentheses

ببخشید خیلی مبتدی هستم :-(

هممون اول مبتدی بودیم!

Cur = sql1.ExecQuery("Select * From TblFehrest  WHERE Alaqe"= '1' LIMIT 10 OFFSET 15)
به
Cur = sql1.ExecQuery("Select * From TblFehrest  WHERE Alaqe='1' LIMIT 10 OFFSET 0")

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

 

 

 

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 12 ساعت قبل، M-CAP7AIN گفته است :

هممون اول مبتدی بودیم!


Cur = sql1.ExecQuery("Select * From TblFehrest  WHERE Alaqe"= '1' LIMIT 10 OFFSET 15)
به
Cur = sql1.ExecQuery("Select * From TblFehrest  WHERE Alaqe='1' LIMIT 10 OFFSET 0")

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

 

 

 

 

ببخشید.الان این ارورو میده:

an error occurred in sub:main_img1_click(java line:571)

android.database.SQLite Exception:no such column:Alaqe (code 1):, while compiling: Select * Form TblFehrest WHERE Alaqe='1' LIMIT 10 OFFSET 0 Continue?

اگه (yes) بزنی فهرست خالی نشون میده و اگه (NO) بزنی از برنامه خارج میشه!

من کدها و دیتابیس را خصوصی براتون میفرستم.لطفا وقت کردین یه نگاهی بهش بندازین.ممنونم

لطفا ایمیلتونو خصوصی برام بفرستین تا ارسال کنم.ارسالهای من توی انجمن کمه و نمیزاره پیام خصوصی بفرستم

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 13 ساعت قبل، ruydarwatch گفته است :

ببخشید.الان این ارورو میده:

an error occurred in sub:main_img1_click(java line:571)

android.database.SQLite Exception:no such column:Alaqe (code 1):, while compiling: Select * Form TblFehrest WHERE Alaqe='1' LIMIT 10 OFFSET 0 Continue?

اگه (yes) بزنی فهرست خالی نشون میده و اگه (NO) بزنی از برنامه خارج میشه!

من کدها و دیتابیس را خصوصی براتون میفرستم.لطفا وقت کردین یه نگاهی بهش بندازین.ممنونم

لطفا ایمیلتونو خصوصی برام بفرستین تا ارسال کنم.ارسالهای من توی انجمن کمه و نمیزاره پیام خصوصی بفرستم

از طریق وبلاگ یا تلگرام برام بفرستید.

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...