HAMEDDDR 15 ارسال شده در 1 شهریور، ۱۳۹۶ اشتراک گذاری ارسال شده در 1 شهریور، ۱۳۹۶ با سلام من یک کتاب نوشتم لیمت دادم همه چیزش درست فقط یک مشگل دارم لیست ویو درست وقتی کلیک میکنم متن نشون میده وقتی برمیگردم به لیست ویو چندتا بالا پایی میکنم ارور بده عکس ارور فرستادم مخم ارور داده لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
محمدرضا شاهپیری 5,579 ارسال شده در 1 شهریور، ۱۳۹۶ اشتراک گذاری ارسال شده در 1 شهریور، ۱۳۹۶ ارور رو به خط ۸۵ گرفته. این خط چیزی نداره که. یه جای دیگه شاید به خطا خورده. کدهای قبلش چیه؟ لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
HAMEDDDR 15 ارسال شده در 1 شهریور، ۱۳۹۶ سازنده اشتراک گذاری ارسال شده در 1 شهریور، ۱۳۹۶ در 11 ساعت قبل، محمدرضا شاهپیری گفته است : ارور رو به خط ۸۵ گرفته. این خط چیزی نداره که. یه جای دیگه شاید به خطا خورده. کدهای قبلش چیه؟ Sub Process_Globals Dim SQl1 As SQL Dim cursor1 As Cursor Dim Khandan As String Dim TenRecordPlus As String = "20" End Sub Sub Globals ' Dim TenRecordPlus As String = "10" Dim cur1 As Cursor ' Private sv As ScrollView ' Private Label1 As Label 'Dim size As Int =0 Dim cur1 As Cursor Private sv As ScrollView Private Label1 As Label Dim size As Int =0 Dim i As Int Private ListView1 As ListView End Sub Sub Activity_Create(FirstTime As Boolean) 'Activity.LoadLayout("onavansv") ToastMessageShow("mahak application",False) ToastMessageShow("[email protected]",True) Dim p1 As Panel ' If FirstTime Then Activity.LoadLayout("onavansv") If FirstTime Then If File.Exists(File.DirInternal,"book.db") = False Then File.Copy(File.DirAssets,"book.db",File.DirInternal,"book.db") End If SQl1.Initialize(File.DirInternal,"book.db",False) cur1 = SQl1.ExecQuery2("SELECT * FROM book ORDER BY id LIMIT ?",Array As String(20)) For i = 0 To cur1.RowCount -1 cur1.Position = i p1.Initialize("") sv.Panel.AddView(p1,2%x,size,96%x,90dip) size = size + 95dip p1.LoadLayout("Fehrest") ListView1.Tag = i ' ToastMessageShow("لود شدن 10 اینپیتنم دیگر","") ListView1.AddSingleLine(cur1.GetString("Name")) ' Label1.TextColor = Colors.White 'Label1.TextSize = 17 ListView1.Color=Colors.White ListView1.SingleLineLayout.Label.TextColor=Colors.Black ListView1.SingleLineLayout.Label.TextSize=14 ListView1.SingleLineLayout.Label.Gravity=Gravity.CENTER Next cur1.Close sv.Panel.Height = size End If sv.Panel.Color = Colors.Transparent End Sub Sub Activity_Resume End Sub Sub Activity_Pause (UserClosed As Boolean) End Sub Sub sv_ScrollChanged(Position As Int) If sv.ScrollPosition + sv.Height = sv.Panel.Height Then SQl1.Initialize(File.DirInternal,"book.db",False) ProgressDialogShow("لطفا صبر کنید") cur1 = SQl1.ExecQuery2("SELECT * FROM book OFFSET LIMIT ?,?",Array As String(TenRecordPlus,20)) ' TenRecordPlus=TenRecordPlus+20 '========================================================== For i = 0 To cur1.RowCount -1 cur1.Position = i Dim p1 As Panel p1.Initialize("") sv.Panel.AddView(p1,2%x,size,96%x,90dip) p1.LoadLayout("Fehrest") size = size + 95dip ListView1.Tag = i ListView1.AddSingleLine(cur1.GetString("Name")) ' ToastMessageShow("لود شدن 10 اینپیتنم دیگر","") 'ListView1.TextColor = Colors.White ' Label1.TextSize = 17 ListView1.Color=Colors.White ListView1.SingleLineLayout.Label.TextColor=Colors.Black ListView1.SingleLineLayout.Label.TextSize=14 ListView1.SingleLineLayout.Label.Gravity=Gravity.CENTER Next '========================================================= cur1.Close sv.Panel.Height = size DoEvents If IsNumber(TenRecordPlus) = True Then TenRecordPlus = TenRecordPlus + 20 End If End If End Sub Sub Label1_Click End Sub Sub pnl_Click End Sub Sub lbl_Click End Sub Sub Panel1_Touch (Action As Int, X As Float, Y As Float) End Sub Sub ListView1_ItemClick (Position As Int, Value As Object) TenRecordPlus=Value StartActivity(khandandastanha) End Sub Sub Activity_KeyPress (KeyCode As Int) As Boolean 'Return True to consume the event If (KeyCode = KeyCodes.KEYCODE_BACK) Then Activity.Finish StartActivity(Main) Return True End If End Sub کل اکتیوتی لیستمه لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
محمدرضا شاهپیری 5,579 ارسال شده در 1 شهریور، ۱۳۹۶ اشتراک گذاری ارسال شده در 1 شهریور، ۱۳۹۶ خیلی کدنویسی تون ناشیانه اس عزیز. خیلی از اصولا رو رعایت نکردین. تو کد زیر شما مگه یه با توی oncreate اینشیالایز sql رو انجام ندادین؟ دو باره تو هربار که اسکرول تموم میشه شما میاین و اینشیالایز میکنید این کارو به هیچ وجه نکنید. Sub sv_ScrollChanged(Position As Int) If sv.ScrollPosition + sv.Height = sv.Panel.Height Then SQl1.Initialize(File.DirInternal,"book.db",False) ProgressDialogShow("لطفا صبر کنید") cur1 = SQl1.ExecQuery2("SELECT * FROM book OFFSET LIMIT ?,?",Array As String(TenRecordPlus,20)) ' TenRecordPlus=TenRecordPlus+20 '========================================================== For i = 0 To cur1.RowCount -1 نکته بعدی اینه که شما تو oncreate وقتی آیتمها رو گرفتین cur1.Close زدین بعد توی sv_ScrollChanged دوباره اونو مقدار دهی کردین. خب معلومه مشکل داره این. تا موقعی که همه آیتمهاتون لود نشدن نباید کرزر رو ببندین. کدنویسیتون رو تمیز تر واصولی تر بنویسین انشالا مشکل حل میشه لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
HAMEDDDR 15 ارسال شده در 1 شهریور، ۱۳۹۶ سازنده اشتراک گذاری ارسال شده در 1 شهریور، ۱۳۹۶ در 3 دقیقه قبل، محمدرضا شاهپیری گفته است : خیلی کدنویسی تون ناشیانه اس عزیز. خیلی از اصولا رو رعایت نکردین. تو کد زیر شما مگه یه با توی oncreate اینشیالایز sql رو انجام ندادین؟ دو باره تو هربار که اسکرول تموم میشه شما میاین و اینشیالایز میکنید این کارو به هیچ وجه نکنید. Sub sv_ScrollChanged(Position As Int) If sv.ScrollPosition + sv.Height = sv.Panel.Height Then SQl1.Initialize(File.DirInternal,"book.db",False) ProgressDialogShow("لطفا صبر کنید") cur1 = SQl1.ExecQuery2("SELECT * FROM book OFFSET LIMIT ?,?",Array As String(TenRecordPlus,20)) ' TenRecordPlus=TenRecordPlus+20 '========================================================== For i = 0 To cur1.RowCount -1 نکته بعدی اینه که شما تو oncreate وقتی آیتمها رو گرفتین cur1.Close زدین بعد توی sv_ScrollChanged دوباره اونو مقدار دهی کردین. خب معلومه مشکل داره این. تا موقعی که همه آیتمهاتون لود نشدن نباید کرزر رو ببندین. کدنویسیتون رو تمیز تر واصولی تر بنویسین انشالا مشکل حل میشه کد کلان عوض کردم یک مشگلم اینه اون مقدار مساوی با ولیو بعد تو فراخونی متن نمیدونم کجا باید بدم Sub Activity_Create(FirstTime As Boolean) 'Activity.LoadLayout("onavansv") ToastMessageShow("mahak application",False) ToastMessageShow("[email protected]",True) Dim p1 As Panel ' If FirstTime Then Activity.LoadLayout("onavansv") ' If FirstTime Then If File.Exists(File.DirInternal,"book.db") = False Then File.Copy(File.DirAssets,"book.db",File.DirInternal,"book.db") End If If SQl1.IsInitialized = False Then SQl1.Initialize(File.DirInternal,"book.db",False) End If listV.Initialize(Me,"test") Activity.AddView(listV.AsView,0,0,100%x,100%y) cur1 = SQl1.ExecQuery("SELECT * FROM book LIMIT 10") For i = 0 To cur1.RowCount - 1 cur1.Position = i Dim p1 As Panel p1.Initialize("") listV.Add(p1,220dip,cur1.GetInt("id")) p1.LoadLayout("l1") lbl.Text = cur1.GetString("Name") Next cur1.Close End Sub Sub Activity_Resume End Sub Sub Activity_Pause (UserClosed As Boolean) End Sub Sub test_Position(Position As Int) If Position + listV.Height >= listV.PanelHeight Then ProgressDialogShow("لطفا صبر کنید") cur1 =SQl1.ExecQuery2("SELECT * FROM book LIMIT ?,10",Array As String(total)) total = total + 10 For i = 0 To cur1.RowCount - 1 cur1.Position = i Dim p1 As Panel p1.Initialize("") listV.Add(p1,220dip,cur1.GetInt("id")) p1.LoadLayout("l1") lbl.Text = cur1.GetString("Name") Next cur1.Close ProgressDialogHide End If End Sub کد عوض کردم جمع جورتر شده لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
سوال
HAMEDDDR 15
با سلام من یک کتاب نوشتم لیمت دادم همه چیزش درست فقط یک مشگل دارم
لیست ویو درست وقتی کلیک میکنم متن نشون میده وقتی برمیگردم به لیست ویو چندتا بالا پایی میکنم ارور بده عکس ارور فرستادم مخم ارور داده
لینک ارسال
به اشتراک گذاری در سایت های دیگر
4 پاسخ به این سوال تاکنون داده شده است
ارسالهای توصیه شده
بایگانی شده
این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.