من با دیدن اموزش های مختلف تونستم سورس کتاب مورد نظر خودم و جمع اوری کنم فقط یک مشکل تو قسمت جستجو دارم .
تو جستجو یک ایتم و سرچ میکنم و برام پیدا میکنه اما وقتی اون ایتم و انتخاب میکنم با اررور زیر مواجه میشم
ویرایش : ولی اگر قبل این که وارد قسمت جستجو بشم ، یکبار برم تو قسمت فهرست و مطالب رو باز کنم و بعد برم تو قسمت جستجو با همچنین ارروری مواجه نمیشم.
وقتی دیباگ کردم به این خط که تو عکس پایین هست اررور میده .
این هم عکس از دیتابیسم
این هم کد های مربوطه
Activity Search
Sub Process_Globals
End Sub
Sub Globals
Private EditText1 As EditText
Private ListView1 As ListView
Private RadioButton1 As RadioButton
Private RadioButton2 As RadioButton
Private EditText2 As EditText
End Sub
Sub Activity_Create(FirstTime As Boolean)
Activity.LoadLayout("frm3")
If File.Exists(File.DirInternal,"pm.db")= False Then
File.Copy(File.DirAssets,"pm.db",File.DirInternal,"pm.db")
End If
If Menu1.SQL1.IsInitialized=False Then
Menu1.SQL1.Initialize(File.DirInternal,"pm.db",False)
End If
Dim cur As Cursor
cur=Menu1.SQL1.ExecQuery("SELECT * FROM axmtn1")
For i = 0 To cur.RowCount-1
cur.Position=i
ListView1.AddSingleLine2( cur.GetString("fasl"),cur.GetInt("id"))
ListView1.SingleLineLayout.Label.Gravity=Gravity.CENTER
Dim bd As BitmapDrawable
bd.Initialize(LoadBitmap(File.DirAssets,"3-List.png"))
ListView1.SingleLineLayout.Background=bd
ListView1.SingleLineLayout.Label.TextColor=Colors.White
ListView1.SingleLineLayout.Label.TextSize=30
ListView1.SingleLineLayout.ItemHeight=15%y
Dim a As Typeface
a=Typeface.LoadFromAssets("BYEKAN.ttf")
ListView1.SingleLineLayout.Label.Typeface=a
Next
EditText2.Visible=False
EditText1.Typeface=Typeface.LoadFromAssets("BYEKAN.TTF")
EditText2.Typeface=Typeface.LoadFromAssets("BYEKAN.TTF")
RadioButton1.Typeface=Typeface.LoadFromAssets("BYEKAN.TTF")
RadioButton2.Typeface=Typeface.LoadFromAssets("BYEKAN.TTF")
End Sub
Sub btn_Click
Dim b As Button
b=Sender
Menu1.Fasl=b.Tag
StartActivity(Mataleb)
End Sub
Sub EditText1_TextChanged (Old As String, New As String)
ListView1.Clear
If RadioButton1.Checked Then
Dim cur As Cursor
cur=Menu1.SQL1.ExecQuery("SELECT * FROM axmtn1 WHERE fasl LIKE '%"&EditText1.Text&"%'")
For i = 0 To cur.RowCount-1
cur.Position=i
ListView1.AddSingleLine2(cur.GetString("fasl"),cur.GetInt("id"))
ListView1.SingleLineLayout.Label.Gravity=Gravity.CENTER
Dim bd As BitmapDrawable
bd.Initialize(LoadBitmap(File.DirAssets,"3-List.png"))
ListView1.SingleLineLayout.Background=bd
ListView1.SingleLineLayout.Label.TextColor=Colors.White
ListView1.SingleLineLayout.Label.TextSize=30
ListView1.SingleLineLayout.ItemHeight=15%y
Dim a As Typeface
a=Typeface.LoadFromAssets("BYEKAN.ttf")
ListView1.SingleLineLayout.Label.Typeface=a
Next
End If
End Sub
Sub EditText2_TextChanged (Old As String, New As String)
ListView1.Clear
Dim cur As Cursor
If RadioButton2.Checked Then
cur=Menu1.SQL1.ExecQuery("SELECT * FROM axmtn1 WHERE mtn0 LIKE '%"&EditText2.Text&"%' OR mtn1 LIKE '%"&EditText2.Text&"%' OR mtn2 LIKE '%"&EditText2.Text&"%'")
For i = 0 To cur.RowCount-1
cur.Position=i
ListView1.AddSingleLine2(cur.GetString("fasl"),cur.GetInt("id"))
ListView1.SingleLineLayout.Label.Gravity=Gravity.CENTER
Dim bd As BitmapDrawable
bd.Initialize(LoadBitmap(File.DirAssets,"3-List.png"))
ListView1.SingleLineLayout.Background=bd
ListView1.SingleLineLayout.Label.TextColor=Colors.White
ListView1.SingleLineLayout.Label.TextSize=30
ListView1.SingleLineLayout.ItemHeight=15%y
Dim a As Typeface
a=Typeface.LoadFromAssets("BYEKAN.ttf")
ListView1.SingleLineLayout.Label.Typeface=a
Next
End If
End Sub
Sub RadioButton1_CheckedChange(Checked As Boolean)
EditText1.Visible=True
EditText1.Text=""
' ListView1.Clear
EditText2.Visible=False
End Sub
Sub RadioButton2_CheckedChange(Checked As Boolean)
EditText2.Visible=True
EditText2.Text=""
' ListView1.Clear
EditText1.Visible=False
End Sub
Sub ListView1_ItemClick (Position As Int, Value As Object)
Menu1.Fasl=Value
StartActivity(Mataleb)
End Sub
Activity Matlab
Sub Process_Globals
Dim cur As Cursor
End Sub
Sub Globals
Private ScrollView1 As ScrollView
Private btnFav As Button
Dim obj1 As Reflector
Dim label1 As Label
Dim list1 As List
End Sub
Sub Activity_Create(FirstTime As Boolean)
Activity.LoadLayout("frm2")
If File.Exists(File.DirInternal,"pm.db")= False Then
File.Copy(File.DirAssets,"pm.db",File.DirInternal,"pm.db")
End If
If Menu1.SQL1.IsInitialized=False Then
Menu1.SQL1.Initialize(File.DirInternal,"pm.db",False)
End If
cur = Menu1.sql1.ExecQuery("SELECT * FROM axmtn1 WHERE id = "&Menu1.Fasl)
'fav
For i=0 To cur.RowCount-1
cur.Position=0
If cur.GetInt("fav")=0 Then
Dim Ba As BitmapDrawable
Ba.Initialize(LoadBitmap(File.DirAssets,"4-Favorites.png"))
btnFav.Background=Ba
Else
Dim Ba As BitmapDrawable
Ba.Initialize(LoadBitmap(File.DirAssets,"4-Favorites1.png"))
btnFav.Background=Ba
End If
Next
'mtn
Dim h As Int
For i = 0 To 2
If cur.GetString("mtn"&i) <> Null Then
label1.Initialize("label1")
label1.Text=cur.GetString("mtn"&i)
label1.TextColor=Colors.Black
label1.TextSize=20
label1.Gravity=Gravity.RIGHT
ScrollView1.Panel.AddView(label1,0,h+2%y,ScrollView1.Width-10,ScrollView1.Height)
Dim su As StringUtils
label1.Height=su.MeasureMultilineTextHeight(label1,label1.Text)+10
h=h+su.MeasureMultilineTextHeight(label1,label1.Text)+30
ScrollView1.Panel.Height=h
End If
'seting
If File.Exists(File.DirInternal,"Settings.stg")=True Then
Dim list1 As List
list1=File.ReadList(File.DirInternal,"Settings.stg")
Setting1.font=list1.Get(0)
Setting1.size=list1.Get(1)
Dim a As String
a = code.getData("setting.txt","FontColor")
label1.TextColor = code.getData("setting.txt","FontColor")
Else
Setting1.font="BYEKAN"
Setting1.size=20
End If
label1.Gravity=Gravity.CENTER
label1.Typeface=Typeface.LoadFromAssets(Setting1.font &".ttf")
Dim su As StringUtils
label1.TextSize=Setting1.size
label1.Height=su.MeasureMultilineTextHeight(label1,label1.Text)
ScrollView1.Panel.Height=su.MeasureMultilineTextHeight(label1,label1.Text)
'axe
If cur.GetString("axe"&i) <> Null Then
Dim imageview1 As ImageView
imageview1.Initialize("imageview")
imageview1.Tag = cur.GetString("axe"&i)
ScrollView1.Panel.AddView(imageview1,0,h,ScrollView1.Width,ScrollView1.Height)
imageview1.Bitmap=Menu.bitmap1(i)
If Menu.bitmap1(i).Width > 100%x Then
imageview1.Width = 100%x
imageview1.Height= (imageview1.Width/ Menu.bitmap1(i).Width)*Menu.bitmap1(i).Height
imageview1.Left=(100%x - imageview1.Width)/2
imageview1.Gravity=Gravity.FILL
End If
h=h+imageview1.Height+30
ScrollView1.Panel.Height=h
End If
Next
End Sub
Activity Menu
Sub Process_Globals
Dim bitmap1(3) As Bitmap
End Sub
Sub Activity_Create(FirstTime As Boolean)
Activity.LoadLayout("frmmenu")
For i = 0 To 2
If bitmap1(i).IsInitialized=True Then
obj1.Target=bitmap1(i)
obj1.RunMethod("recycle")
End If
Next
End Sub
سوال
abidoss 10
با سلام خدمت اساتید محترم . . .
من با دیدن اموزش های مختلف تونستم سورس کتاب مورد نظر خودم و جمع اوری کنم فقط یک مشکل تو قسمت جستجو دارم .
تو جستجو یک ایتم و سرچ میکنم و برام پیدا میکنه اما وقتی اون ایتم و انتخاب میکنم با اررور زیر مواجه میشم
ویرایش : ولی اگر قبل این که وارد قسمت جستجو بشم ، یکبار برم تو قسمت فهرست و مطالب رو باز کنم و بعد برم تو قسمت جستجو با همچنین ارروری مواجه نمیشم.
وقتی دیباگ کردم به این خط که تو عکس پایین هست اررور میده .
این هم عکس از دیتابیسم
این هم کد های مربوطه
Activity Search
Activity Matlab
Activity Menu
شرمنده اگه زیاد شد چون واقعا دیگه خسته شدم.
لینک ارسال
به اشتراک گذاری در سایت های دیگر
7 پاسخ به این سوال تاکنون داده شده است
ارسالهای توصیه شده
بایگانی شده
این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.