رفتن به مطلب
بخش Unity به انجمن اضافه شد
  • 0

مشکل در positon اسکرول ویو


seyed_27

سوال

بسمه تعالی

با سلام خدمت مدیریت محترم و دوستان

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

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

میخوام یه کاری کنم که مثلا 300 تا حرف 300 تا حرف لود بشه یعنی به این صورت

500 تای اول لود بشه وقتی اسکرول ویو به انتها رسید 500 تای دیگه لود بشه

تا اینکه متن تمام بشه

دوستان کمک کنند

سورس رو پیوست کردم لطفا تصحیح بفرمائید

دوستان راهنمایی کردند که از position استفاده بشه من یه مقداریش رو نوشتم اما مشکل داره

مشکلش اینه که طول متن من 9700 تاست ولی positon اسکرول تا 870 تا بیشتر نمیره

سورس رو هم آپلود کردم دوستان لطفا راهنمایی کنند



Sub Process_Globals

       Dim sql1 As SQL
       Dim cur As Cursor

End Sub

Sub Globals
   Private sv As ScrollView

   Dim l1 As Label

   Dim FontSize As String

   Dim j,k As Int

   Private EditText1 As EditText
   Dim su As StringUtils

   Dim s As String

   Dim i As Int
   Private EditText2 As EditText
   Private EditText3 As EditText
   Private EditText4 As EditText
   Private EditText5 As EditText
End Sub

Sub Activity_Create(FirstTime As Boolean)

   Activity.LoadLayout("Matlab")
   sql1.Initialize(File.DirInternal,"a1.db",False)



   cur= sql1.ExecQuery("SELECT * FROM mytable")


   '______________________________________________________________
   If sql1.IsInitialized=False Then
       sql1.Initialize(File.DirInternal,"a1.db",False)
   End If 
   '__________________________________________________________________

   cur = sql1.ExecQuery("SELECT * FROM mytable WHERE id =1")


   EditText1.Text=  sv.ScrollPosition

   Dim l1 As Label
   l1.Initialize("")
   l1.TextColor = Colors.Black
   l1.Gravity = Gravity.RIGHT





   For i = 0 To cur.RowCount-1
       cur.Position = i
       s =  cur.GetString("matn")


        l1.Text=s.SubString2(0,200)    
   Next

   sv.Panel.AddView(l1,20,0,100%x,100%y) 
   l1.Width =sv.Panel.Width +70%x


   l1.TextSize = 30

   k = su.MeasureMultilineTextHeight(l1,s.SubString2(0,200))

   l1.Height = k

   sv.Panel.Height = k




End Sub



Sub sv_ScrollChanged(Position As Int)

EditText1.Text=  sv.ScrollPosition
EditText5.Text=s.Length
If sv.ScrollPosition+sv.Height<=sv.Panel.Height Then 
EditText4.Text="1111111111111" 
     j =500
   If j <s.Length Then
   l1.Text = s.SubString2(0,j)
   i = su.MeasureMultilineTextHeight(l1,s.SubString2(0,j))


   j=j+500
   l1.Height = j

   sv.Panel.Height = j
   EditText2.Text="222222222222222"

   End If
End If
EditText3.Text=j
End Sub


Sub Activity_KeyPress (KeyCode As Int) As Boolean 'Return True to consume the event
   If KeyCode = KeyCodes.KEYCODE_BACK Then
       Activity.Finish
   End If
   End Sub
Sub Button2_Click
   sv.ScrollPosition=0 
   EditText1.Text=""
   EditText2.Text=""
   EditText3.Text=""
   EditText4.Text=""
   EditText5.Text=""

End Sub

scrolv.zip

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

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

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

روش شما کاملا اشتباه است به نظر من و باز باعث هنگی برنامه میشه.

این تاپیک رو نگاه کنید:

برنامه پیامکی

باید با استفاده از Limit عمل کنیم

اخوی برنامه بنده رو نگاه کردید؟

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

تو این آموزش میگه چطور رکورد رو 10 تا 10 تا بگیریم

اما مشکل بنده با یه فیلد با متن بسیارطولانیه

یه نگاهی به دیتا بیس بنده بندازید.

2850 تومن خرج دست ما گذاشتید

لطفا با دقت یه نگاهی به برنامه بنده بندازید

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

اخوی برنامه بنده رو نگاه کردید؟

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

تو این آموزش میگه چطور رکورد رو 10 تا 10 تا بگیریم

اما مشکل بنده با یه فیلد با متن بسیارطولانیه

یه نگاهی به دیتا بیس بنده بندازید.

2850 تومن خرج دست ما گذاشتید

لطفا با دقت یه نگاهی به برنامه بنده بندازید

دوست عزیز عنوان آموزش این بوده که 10 تا 10 تا یا 5 تا 5 تا اطلاعات رو بگیریم و نمایش بدیم که به صورت درست و کامل آموزش داده شده.

شما مگه قبل از خرید کردنتون این دمو رو که توی توضیحات گذاشته بودیم رو ندیدید؟

دمو رو برای این قرار میدیم که قبل از خرید به صورت تصویری کار برنامه رو ببینید.

http://www.aparat.com/v/nP1kU

ghabl_az_kharid.PNG

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

چرا دیدم اما به راهنماییتون در مورد سوالم هم حساب کرده بودم و گفتم شاید تو اونجا توضیح داده باشید

در هر صورت میتونید به مشکل ما رسیدگی کنید؟

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

چرا دیدم اما به راهنماییتون در مورد سوالم هم حساب کرده بودم و گفتم شاید تو اونجا توضیح داده باشید

در هر صورت میتونید به مشکل ما رسیدگی کنید؟

بله چند تا دستور SQLITE رو دارم بررسی میکنم.

فکر کنم با SubString کردن از داخل خود دستور PHP کارتون راه بیفته *fekr*

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

درود

روش شما کاملا اشتباه است به نظر من و باز باعث هنگی برنامه میشه.

این تاپیک رو نگاه کنید:

http://answercenter.ir/thread2205.html

باید با استفاده از Limit عمل کنیم

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

بایگانی شده

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

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

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