سلام دوستان. من برای برنامم یه لیست علاقمندی درست کردم. همه چی درست انجام میشه، فقط دوتا مشکل دارم که هرکاری کردم نتونستم حلش کنم
1. وقتی میخوام یه آیتم رو از لیست علاقمندی حذف کنم. به فرض من 4 تا آیتم تو لیست دارم:
علی
احمد
اصغر
رضا
وقتی روی هرکدوم از آیتم ها بجز علی(آیتم اول) کلیک میکنم آیتم اول حذف میشه و اون آیتم میمونه سرجاش.
2. بعد از حذف آیتم ها وقتی برمیگردم به اکتویتی اصلی و دوباره میام و اکتیویتی علاقمندی ها..آیتم هایی که حذف کرده بودم سرجاشونن و حذف نشدن.
این کدهای اکتیویتی علاقمندی هستش(کدهای اضافه رو حذف کردم):
Sub Process_Globals
Dim sql As SQL
End Sub
Sub Globals
Private Apc As AppCompat
Private ToolBarp As ACToolBarDark
Dim cursur1 As Cursor
Private pcontent As Panel
Dim Alistview As AriaListView
Dim adapterbtn As AriaAdapterWithImage
Dim l1,l2,l3,l_id As List
Dim toast As TastyToast
Dim entxt As String
Dim axid As Int
Dim fatxt As String
Dim TTS1 As TTS
Dim SDialog As AmazingDialog
Dim btn As Button
Dim copy As Button
Dim xml As XmlLayoutBuilder
Dim iddialog As Int
Dim iddddi As Int
End Sub
Sub Activity_Create(FirstTime As Boolean)
Alistview.Initialize("")
Alistview.SetDivider(Null)
pcontent.AddView(Alistview,0,10%y,100%x,100%y - ToolBarp.Height)
l1.Initialize
l2.Initialize
l3.Initialize
l_id.Initialize
For i=0 To cursur1.RowCount-1
cursur1.Position=i
l1.Add(cursur1.GetString("english"))
l2.Add(cursur1.GetString("persian"))
l3.Add(adapterbtn.getAssetsFullAddress("speaker.png"))
l_id.add(cursur1.getInt("id"))
Next
adapterbtn.Initialize("layout_image_left",l1,l2,l3).ToListView(Alistview)
adapterbtn.SetFont1(Typeface.LoadFromAssets("Parastoo-Bold.ttf"))
adapterbtn.SetFont2(Typeface.LoadFromAssets("Parastoo-Bold.ttf"))
' adapterbtn.SetColor(Colors.RGB(234,128,252),Colors.RGB(74,20,140),Colors.RGB(74,20,140),Colors.RGB(224,64,251),Colors.White,Colors.White)
adapterbtn.SetColor(0xFFf4275f,Colors.Black,Colors.Black,0xFFff9000,Colors.Black,Colors.Black)
Dim dv As XmlLayoutBuilder
Alistview.SetDivider(dv.GetDrawable("devider"))
cursur1.Close
End Sub
Sub list_select (ParentEventName As String,position As Int)
SDialog.Initialize("sd",SDialog.Theme_LIGHT)
btn.RemoveView
SDialog.SetCancelable(True)
SDialog.SetHeaderColorInt(0xFF0277bd)
' cursur1=sql.ExecQuery("SELECT * FROM texts WHERE id="&(position+0))
iddddi = l_id.get(position)
cursur1=sql.ExecQuery("SELECT * FROM texts WHERE id="&(iddddi))
For i = 0 To cursur1.RowCount - 1
cursur1.Position = i
position = i
Next
' cursur1 = sql.ExecQuery("select * from texts where id = "&(iddialog))
' For i = 0 To cursur1.RowCount - 1
'
' cursur1.Position = i
' position = i
' Next
entxt = cursur1.GetString("english")
axid = cursur1.GetInt("id")
fatxt = cursur1.GetString("persian")
SDialog.SetDescription(cursur1.GetString("english") &CRLF& cursur1.GetString("persian"),Colors.DarkGray,Typeface.LoadFromAssets("parastoo.ttf"),Gravity.NO_GRAVITY)
SDialog.SetStyle(SDialog.HEADER_WITH_ICON)
SDialog.SetHeaderScaleType("FIT_XY")
SDialog.SetHeaderDrawable(xml.GetDrawable("header"&(axid Mod 38)))
' SDialog.WithOverlay(True,Colors.RGB(123,123,123))
' SDialog.SetIcon(xml.GetDrawable("chats_icon"))
SDialog.SetNegativeText("اشتراک")
SDialog.SetNeutraltext("یاد نگرفتم")
SDialog.SetPositivetext("کپی")
SDialog.SetButtonsTypeface(Typeface.LoadFromAssets("parastoo.ttf"),Colors.DarkGray)
SDialog.SetScrollable(True)
SDialog.WithDialogAnimation(True)
SDialog.WithDivider(True,0xFF0277bd)
SDialog.WithIconAnimation(True)
SDialog.SetCustomView(btn)
SDialog.show
End Sub
Sub listclear
l1.Clear
l2.Clear
l3.Clear
l_id.Clear
End Sub
Sub sd_onNeutralclick (قسمت حذف آیتم ها)
Try
Dim num As Int = iddddi - 1
cursur1=sql.ExecQuery("SELECT * FROM texts WHERE id="&(iddddi))
For i = 0 To cursur1.RowCount - 1
cursur1.Position = i
iddddi = i
Next
sql.ExecNonQuery("UPDATE texts SET f = 0 WHERE id ="&num)
toast.Initialize("از لیست یادگرفته ها حذف شد.",toast.Duration_LONG,toast.Type_SUCCESS)
l1.RemoveAt(iddialog)
l2.RemoveAt(iddialog)
l3.RemoveAt(iddialog)
adapterbtn.NotifyDataSetChanged
Catch
Log(LastException)
End Try
End Sub
سوال
Milad-Mohammadi 401
سلام دوستان. من برای برنامم یه لیست علاقمندی درست کردم. همه چی درست انجام میشه، فقط دوتا مشکل دارم که هرکاری کردم نتونستم حلش کنم
1. وقتی میخوام یه آیتم رو از لیست علاقمندی حذف کنم. به فرض من 4 تا آیتم تو لیست دارم:
علی
احمد
اصغر
رضا
وقتی روی هرکدوم از آیتم ها بجز علی(آیتم اول) کلیک میکنم آیتم اول حذف میشه و اون آیتم میمونه سرجاش.
2. بعد از حذف آیتم ها وقتی برمیگردم به اکتویتی اصلی و دوباره میام و اکتیویتی علاقمندی ها..آیتم هایی که حذف کرده بودم سرجاشونن و حذف نشدن.
این کدهای اکتیویتی علاقمندی هستش(کدهای اضافه رو حذف کردم):
Sub Process_Globals Dim sql As SQL End Sub Sub Globals Private Apc As AppCompat Private ToolBarp As ACToolBarDark Dim cursur1 As Cursor Private pcontent As Panel Dim Alistview As AriaListView Dim adapterbtn As AriaAdapterWithImage Dim l1,l2,l3,l_id As List Dim toast As TastyToast Dim entxt As String Dim axid As Int Dim fatxt As String Dim TTS1 As TTS Dim SDialog As AmazingDialog Dim btn As Button Dim copy As Button Dim xml As XmlLayoutBuilder Dim iddialog As Int Dim iddddi As Int End Sub Sub Activity_Create(FirstTime As Boolean) Alistview.Initialize("") Alistview.SetDivider(Null) pcontent.AddView(Alistview,0,10%y,100%x,100%y - ToolBarp.Height) l1.Initialize l2.Initialize l3.Initialize l_id.Initialize For i=0 To cursur1.RowCount-1 cursur1.Position=i l1.Add(cursur1.GetString("english")) l2.Add(cursur1.GetString("persian")) l3.Add(adapterbtn.getAssetsFullAddress("speaker.png")) l_id.add(cursur1.getInt("id")) Next adapterbtn.Initialize("layout_image_left",l1,l2,l3).ToListView(Alistview) adapterbtn.SetFont1(Typeface.LoadFromAssets("Parastoo-Bold.ttf")) adapterbtn.SetFont2(Typeface.LoadFromAssets("Parastoo-Bold.ttf")) ' adapterbtn.SetColor(Colors.RGB(234,128,252),Colors.RGB(74,20,140),Colors.RGB(74,20,140),Colors.RGB(224,64,251),Colors.White,Colors.White) adapterbtn.SetColor(0xFFf4275f,Colors.Black,Colors.Black,0xFFff9000,Colors.Black,Colors.Black) Dim dv As XmlLayoutBuilder Alistview.SetDivider(dv.GetDrawable("devider")) cursur1.Close End Sub Sub list_select (ParentEventName As String,position As Int) SDialog.Initialize("sd",SDialog.Theme_LIGHT) btn.RemoveView SDialog.SetCancelable(True) SDialog.SetHeaderColorInt(0xFF0277bd) ' cursur1=sql.ExecQuery("SELECT * FROM texts WHERE id="&(position+0)) iddddi = l_id.get(position) cursur1=sql.ExecQuery("SELECT * FROM texts WHERE id="&(iddddi)) For i = 0 To cursur1.RowCount - 1 cursur1.Position = i position = i Next ' cursur1 = sql.ExecQuery("select * from texts where id = "&(iddialog)) ' For i = 0 To cursur1.RowCount - 1 ' ' cursur1.Position = i ' position = i ' Next entxt = cursur1.GetString("english") axid = cursur1.GetInt("id") fatxt = cursur1.GetString("persian") SDialog.SetDescription(cursur1.GetString("english") &CRLF& cursur1.GetString("persian"),Colors.DarkGray,Typeface.LoadFromAssets("parastoo.ttf"),Gravity.NO_GRAVITY) SDialog.SetStyle(SDialog.HEADER_WITH_ICON) SDialog.SetHeaderScaleType("FIT_XY") SDialog.SetHeaderDrawable(xml.GetDrawable("header"&(axid Mod 38))) ' SDialog.WithOverlay(True,Colors.RGB(123,123,123)) ' SDialog.SetIcon(xml.GetDrawable("chats_icon")) SDialog.SetNegativeText("اشتراک") SDialog.SetNeutraltext("یاد نگرفتم") SDialog.SetPositivetext("کپی") SDialog.SetButtonsTypeface(Typeface.LoadFromAssets("parastoo.ttf"),Colors.DarkGray) SDialog.SetScrollable(True) SDialog.WithDialogAnimation(True) SDialog.WithDivider(True,0xFF0277bd) SDialog.WithIconAnimation(True) SDialog.SetCustomView(btn) SDialog.show End Sub Sub listclear l1.Clear l2.Clear l3.Clear l_id.Clear End Sub Sub sd_onNeutralclick (قسمت حذف آیتم ها) Try Dim num As Int = iddddi - 1 cursur1=sql.ExecQuery("SELECT * FROM texts WHERE id="&(iddddi)) For i = 0 To cursur1.RowCount - 1 cursur1.Position = i iddddi = i Next sql.ExecNonQuery("UPDATE texts SET f = 0 WHERE id ="&num) toast.Initialize("از لیست یادگرفته ها حذف شد.",toast.Duration_LONG,toast.Type_SUCCESS) l1.RemoveAt(iddialog) l2.RemoveAt(iddialog) l3.RemoveAt(iddialog) adapterbtn.NotifyDataSetChanged Catch Log(LastException) End Try End Sub
ممنون میشم کمک کنید دوستان
لینک ارسال
به اشتراک گذاری در سایت های دیگر
4 پاسخ به این سوال تاکنون داده شده است
ارسالهای توصیه شده
بایگانی شده
این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.