-
تعداد ارسال ها
122 -
تاریخ عضویت
-
آخرین بازدید
-
روز های برد
10
نوع محتوا
نمایه ها
فروشگاه
تالارهای گفتگو
بخش دریافت
پست ها ارسال شده توسط Mthzf1384
-
-
در 14 ساعت قبل، Mr.Man گفته است :
ببخشید چطور میشه این محصول رو خریداری کرد؟
سلام دوست عزیز
لینک فروشگاه کتابخانه قرار داده شده باید از اونجا خریداری کنید
موفق باشید
- 1
- 1
-
در 2 ساعت قبل، Mr.Kafiri گفته است :
سلام و درود..
اقای شاهپیری توی رویداد کلیک OnItemClick چجوری میشه با viewclicked کار کرد من هر کار میکنم خطا میده
-
Sub PR_onBindViewHolder(layoutitem As Object,position As Int,viewtype As Int) Dim pg1 As Panel =layoutitem pg1.Width = 48%X pg1.Height = 140dip . . . pg1.Tag = dt.id End Sub Sub PR_onCreateViewHolder(layoutitem As Object,viewtype As Int) As Object Dim p As Panel = layoutitem Dim pp As Panel pp.Initialize("") pp.LoadLayout("form_pr") p.AddView(pp,0%X,0,45%X,120dip) Return Null End Sub Sub PR_getItemCount As Int Return lData.Size End Sub Sub PR_OnItemClick(ItemTag As Object,viewclicked As Object,position As Int) dim p as panel = viewclicked dim p2 as panel = p.getView(0) dim img as ImageView = p2.GetView(0) . . . End Sub
الان این کد های من اشتباس؟
من یه امیج ویو دارم که میخوام وقتی روی اون کلیک شد عکسش عوض بشه، مثل اینکه نمیدونم viewclicked کار نمیکنه یا یجایی من اشتباه رفتم
سلام
من چند وقت پیش با کتابخونه آقای شاهپیری کار میکردم منم همین مشکل رو داشتم (فکر میکنم مشکل توی لود کردن لیوته وقتی لیوت لود کنی دیگه نمیتونی به اون صورت ویو رو بگیری و روش کار انجام بدی)
در هر صورت من اومدم دستی ویو ها رو اضافه کردم و درست شد شما هم یک امتحانی بکن
- 1
-
در در 29 شهریور 1399 در 08:20، محمدرضا شاهپیری گفته است :
خب این که ساده اس. وقتی دارین اسکرول میکنید متد onBindViewHolder اجرا میشه که همون سطر مورد نظر هست. تو این متد پوزیشن رو توی حافظه ذخیره کنید.توی ورود بعدی از دستور (PrRecyclerLayout.smoothscrollToPosition(position استفاده کنید
خیلی ممنون
-
سلام خدمت آقای شاهپیری بزرگوار
آقای شاهپیری عزیز من یه کتاب نوشتم که میخوام آخرین مشاهده داشته باشه چجوری پوزیشن آخرین آیتمی رو که کاربر دیده ذخیره کنم
با تشکر
- 1
-
در 53 دقیقه قبل، Mthzf1384 گفته است :
سلام آقای شاهپیری عزیز
فکر می کنم شما منظور منو درست متوجه نشدید
من آموزش هاتون رو نگاه کردم ولی داخل آموزش ها کلیک بر روی یک آیتم بوده مثل اینکه به جای لیست ویو از ریسایکلر ویو استفاده شده باشه
شما به عکس توجه کنید این برنامه ی منه
حالا من میخوام مثلا روی دکمه ی قلبه کلیک کنم باید چه کار کنم که ساب مربوط به خودش فراخوانی بشه؟
این OnItemClick من حتی اگر روی نوشته هم کلیک کنم ساب فراخوانی میشه ولی من میخوام هر دکمه یه کار خاصی انجام بده با دستور ایف هم هر چی فکر کردم نفهمیدم چجوری بزارم
در هر صورت ممنون از کتابخانه ی خوبتون و پاسخگوییتون
ممنون مشکل حل شد
- 1
-
در 3 ساعت قبل، محمدرضا شاهپیری گفته است :
سلام. عزیز برای کلیک روی آیتمهای ریسایکلر باید ایونت زیر رو اضافه کنید به پروژه. اینها همه تو اموزشها گفته شده. لطفا اول داکیومنت و آموزشها رو ببینید بعد توی پروژه از ریسایکلر استفاده کنید
Private Sub EventName_OnItemClick(ItemTag As Object,viewclicked As Object,position As Int) End Sub
سلام آقای شاهپیری عزیز
فکر می کنم شما منظور منو درست متوجه نشدید
من آموزش هاتون رو نگاه کردم ولی داخل آموزش ها کلیک بر روی یک آیتم بوده مثل اینکه به جای لیست ویو از ریسایکلر ویو استفاده شده باشه
شما به عکس توجه کنید این برنامه ی منه
حالا من میخوام مثلا روی دکمه ی قلبه کلیک کنم باید چه کار کنم که ساب مربوط به خودش فراخوانی بشه؟
این OnItemClick من حتی اگر روی نوشته هم کلیک کنم ساب فراخوانی میشه ولی من میخوام هر دکمه یه کار خاصی انجام بده با دستور ایف هم هر چی فکر کردم نفهمیدم چجوری بزارم
در هر صورت ممنون از کتابخانه ی خوبتون و پاسخگوییتون
-
سلام به همه اساتید و دوستان
خوشبختانه مشکل قبلیم حل شد اما متاسفانه مشکل دیگری به مشکلاتمان اضافه شد
من داخل برنامم دارم از ریسایکلر ویو استفاده می کنم و داخل این ریسایکلر ویو دارم یه پنل که داخلش دو تا لیبل و 5 تا دکمه هست رو لود می کنم .
من دو تا سوال دارم:
- اگر بخوام روی یکی از این دکمه ها کلیک کنم آیا باید از رویداد کلیک دکمه استفاده کنم؟(من اومدم از این طریق رفتم ولی اصلا وقتی روی دکمه کلیک می کنم رویداد کلیک دکمه فراخوانی نمیشه و اصلا کد های این رو نمیخونه)
- اگر جوابتون به سوال اولم نه هست پس من چجوری باید کد های مربوط به کلیک روی دکمه رو بنویسم منظورم اینه که کجا؟
با تشکر از همه اساتید و دوستان انسر سنتری
-
سلام
من کد هامو عوض کردم ولی همون مشکل قبلی رو دارم
Sub Process_Globals Dim sql As SQL End Sub Sub Globals Type mymodel(Text As String) Dim l As List Dim pr As PersianRecyclerLayout Dim su As StringUtils Dim cur As Cursor Private lblpyamaktext As Label Private lbltitr As Label End Sub Sub Activity_Create(FirstTime As Boolean) Activity.LoadLayout("Layout") If(File.Exists(File.DirInternal , "book10v(2.0.2)") = False)Then File.Copy(File.DirAssets , "book10v(2.0.2).db" , File.DirInternal , "book10v(2.0.2).db") End If sql.Initialize(File.DirInternal , "book10v(2.0.2).db" , True) l.Initialize gettext pr.Builder("pr").NormalRecycler.BALayout.ListView.RecyclerView.Build Activity.AddView(pr , 0 , 0 , 100%X , 100%Y) pr.ShowRecycler End Sub Sub Activity_Resume End Sub Sub Activity_Pause (UserClosed As Boolean) End Sub Sub pr_getItemCount As Int Return l.Size End Sub Sub pr_onCreateViewHolder(layoutitem As Object,viewtype As Int) As Object Dim mainpanel As Panel = layoutitem mainpanel.LoadLayout("l") Return Null End Sub Sub pr_onBindViewHolder(layoutitem As Object,position As Int,viewtype As Int) As Object Dim mainpanel As Panel = layoutitem mainpanel.Width = 100%X mainpanel.Height = 200dip Dim model As mymodel model.Initialize model.Text = l.Get(position) lblpyamaktext.Text = model.Text lblpyamaktext.TextColor = Colors.Black lblpyamaktext.Height = su.MeasureMultilineTextHeight(lblpyamaktext , lblpyamaktext.Text) Log(position) Log(model.Text) Return mainpanel End Sub Private Sub gettext cur= sql.ExecQuery("SELECT * FROM TblText WHERE IDzFasl = 2 AND IDzGoftar = 1 AND IDzBakhsh = 1") For i = 0 To cur.RowCount - 1 cur.Position = i l.Add(cur.GetString("Text")) Next
این هم کد هام هستش
یه چیزی هم که فهمیدم این بود که متن ها رو تا آیتم 6 درست لود می کنه و آیتم 7 رو هم وقتی اسکرول می کنم درست نشون میده اما وقتی که اسکرول می کنم میام رو آیتم 8 به جای اینکه متن آیتم 8 رو عوض کنه میاد متن آیتم 7 رو پاک میکنه و متن آیتم هشت رو داخلش میریزه و آیتم 8 هم انگار اینکه آیتم 1 رو از بالا گرفته باشن آورده باشنش پایین
خیلی ممنون میشم راهنمایی کنید
البته ببخشید که من اینقدر سوال میکنم
-
در 14 ساعت قبل، محمدرضا شاهپیری گفته است :
آموزشهای لازم داده شده دوست عزیز. آموزش زیر رو حتما ببینید
***بسیار مهم**آموزش مفاهیم و ساختار ریسایکلر ویو و متدهای اصلی اضافه شد. لینک آموزش*****
خیلی ممنون از پاسخگوییتون
-
در 12 دقیقه قبل، محمدرضا شاهپیری گفته است :
شما حتما باد یک مدل برای دیتاهاتون داشته باشین و حتما باید یک بار دیتا رو از دیتابیس بخونین و توی لیست بریزین
ببخشید من خیلی مبتدیم اگر میشه این قسمت رو برام بیشتر توضیح بدید و اگر میشه مثال هم برام بزنید
-
در هم اکنون، محمدرضا شاهپیری گفته است :
سلام خدمت شما دوست گرامی.
متاسفانه کدنویسیتون خیلی غیر استاندارده. و مشخصا شما مفاهیم ریسایکلر ویو رو مسلط نشدین. شما توی onCreateViewHolder دارین sql.ExecQuery رو صدا میزنین که واقعا فاجعه اس.
شما حتما باد یک مدل برای دیتاهاتون داشته باشین و حتما باید یک بار دیتا رو از دیتابیس بخونین و توی لیست بریزین و دیتا رو از لیست بخونین نه اینکه بیاین مستقیم توی تکرارهای ریسایکلر از Cursor بخونین. حتما آموزش مقدماتی رو ببینین توی آموزش نحوه مدلسازی و ریختن اطلاعات توی لیست گفته شده
خیلی ممنون
-
سلام
من از کتابخانه خوبتون استفاده میکنم. فقط الان یه مشکل برام پیش اومده اونم اینه که متن هایی رو که میخوام به ترتیب لود کنه رو به ترتیب لود نمی کنه
Sub Process_Globals 'These global variables will be declared once when the application starts. 'These variables can be accessed from all modules. Dim sql As SQL End Sub Sub Globals Dim pr As PersianRecyclerLayout Dim su As StringUtils Dim cur As Cursor Private lblpyamaktext As Label Private lbltitr As Label End Sub Sub Activity_Create(FirstTime As Boolean) Activity.LoadLayout("Layout") If(File.Exists(File.DirInternal , "book10v(2.0.2)") = False)Then File.Copy(File.DirAssets , "book10v(2.0.2).db" , File.DirInternal , "book10v(2.0.2).db") End If sql.Initialize(File.DirInternal , "book10v(2.0.2).db" , True) cur= sql.ExecQuery("SELECT * FROM TblText WHERE IDzFasl = 2 AND IDzGoftar = 1 AND IDzBakhsh = 1") pr.Builder("pr").NormalRecycler.BALayout.ListView.RecyclerView.Build Activity.AddView(pr , 0 , 0 , 100%X , 100%Y) pr.ShowRecycler End Sub Sub Activity_Resume End Sub Sub Activity_Pause (UserClosed As Boolean) End Sub Sub pr_getItemCount As Int Return cur.RowCount End Sub Sub pr_onCreateViewHolder(layoutitem As Object,viewtype As Int) As Object Dim mainpanel As Panel = layoutitem mainpanel.LoadLayout("l") cur= sql.ExecQuery("SELECT * FROM TblText WHERE IDzFasl = 2 AND IDzGoftar = 1 AND IDzBakhsh = 1") Return Null End Sub Sub pr_onBindViewHolder(layoutitem As Object,position As Int,viewtype As Int) As Object Dim mainpanel As Panel = layoutitem mainpanel.Width = 100%X mainpanel.Height = 50%Y cur.Position = position lblpyamaktext.Text = cur.GetString("Text") lblpyamaktext.TextColor = Colors.Black lblpyamaktext.Height = su.MeasureMultilineTextHeight(lblpyamaktext , lblpyamaktext.Text) Log(position) Log(cur.GetString("Text")) Return mainpanel End Sub Sub pr_OnItemClick(ItemTag As Object,viewclicked As Object,position As Int) Log(ItemTag) End Sub
این هم کد هام هست در ضمن لاگ هم که می گیرم لاگ ها هیچ مشکلی نداره و کاملا درسته منتهااشتباه در لیبل لود میکنه دلیلش رو نمیدونم.
ممنون میشم راهنمایی کنید
*** برنامه های ساخته شده توسط شما ***
در نقد و بررسی برنامه ها
ارسال شده در
سلام
من همانطور که گفتم خیلی برنامه ای گسترش ندادم اما یه برنامه کتابی از قبل داشتم که آپدیت ساختم براش و طراحی و مشکلاتش رو برطرف کردم
مشکل برنامه را خودم هم میگم تنها مشکلش اینه که به دلیل اینکه آنلاین نیست بعضی امکاناتش به درستی کار نمیکنه و اینکه چون پرداخت درون برنامه ای داره بعضی کاربرا ستاره کم دادن
نکات طلایی زیست
موفق باشید