I get an error:
Object was not initialized (UIView)
Stack Trace: (
CoreFoundation F3021642-E3C0-33F8-9911-DD303A6056D0 + 1157612
libobjc.A.dylib objc_exception_throw + 56
CoreFoundation F3021642-E3C0-33F8-9911-DD303A6056D0 + 120016
result -[B4IObjectWrapper object] + 136
result -[b4i_mod6 _removeclickrecognizer:] + 632
CoreFoundation F3021642-E3C0-33F8-9911-DD303A6056D0 + 1175856
CoreFoundation F3021642-E3C0-33F8-9911-DD303A6056D0 + 8656
result +[B4I runDynamicMethod:method:throwErrorIfMissing:args:] + 1608
result -[B4IShell runMethod:] + 448
result -[B4IShell raiseEventImpl:method:args::] + 1648
result -[B4IShellBI raiseEvent:event:params:] + 1580
result +[B4IObjectWrapper raiseEvent:::] + 300
result __30-[B4IPanelView layoutSubviews]_block_invoke + 900
libdispatch.dylib AF27E74C-BE4A-3364-BB27-AED9916CE02D + 393880
libdispatch.dylib AF27E74C-BE4A-3364-BB27-AED9916CE02D + 397952
libdispatch.dylib AF27E74C-BE4A-3364-BB27-AED9916CE02D + 65628
CoreFoundation F3021642-E3C0-33F8-9911-DD303A6056D0 + 632288
CoreFoundation F3021642-E3C0-33F8-9911-DD303A6056D0 + 608904
CoreFoundation CFRunLoopRunSpecific + 572
GraphicsServices GSEventRunModal + 160
UIKitCore CC6E5AC7-8248-35F6-8B42-2E25C93DCF0A + 11723508
UIKitCore UIApplicationMain + 164
result main + 128
libdyld.dylib 0B475C78-3C12-3121-B7F8-2B95B83DAF44 + 5480
)
clv.Add(CreateForm4("Name"),"")
Sub CreateForm4(Text As String) As Panel
Dim p As B4XView = xui.CreatePanel("")
p.SetLayoutAnimated(0, 0, 0, clv.AsView.Width, HeightPage*0.35)
p.LoadLayout("SeekBar")
lblTitle4.Text=Text
SB4.Tag=SB4
SB4.Value=50
RemoveClickRecognizer(p)
Return p
End Sub
Here's a little code to demonstrate this:You are doing something wrong. Best if you create a small project with the list and the relevant code.
'Code module
#Region Project Attributes
#ApplicationLabel: B4i Example
#Version: 1.0.0
'Orientation possible values: Portrait, LandscapeLeft, LandscapeRight and PortraitUpsideDown
#iPhoneOrientations: Portrait, LandscapeLeft, LandscapeRight
#iPadOrientations: Portrait, LandscapeLeft, LandscapeRight, PortraitUpsideDown
#Target: iPhone, iPad
#ATSEnabled: True
#MinVersion: 8
#End Region
Sub Process_Globals
'These global variables will be declared once when the application starts.
'Public variables can be accessed from all modules.
Public App As Application
Public NavControl As NavigationController
Private Page1 As Page
Private xui As XUI
Private lblforSB4 As Label
Private SB4 As B4XSeekBar
Private clv As CustomListView
Private lblTitle4 As Label
End Sub
Private Sub Application_Start (Nav As NavigationController)
NavControl = Nav
Page1.Initialize("Page1")
Page1.RootPanel.LoadLayout("Page1")
NavControl.ShowPage(Page1)
End Sub
Private Sub Page1_Resize(Width As Int, Height As Int)
For i=1 To 10
clv.Add(CreateForm4("Card "&i),"")
Next
End Sub
Sub CreateForm4(Text As String) As Panel
Dim p As B4XView = xui.CreatePanel("")
p.SetLayoutAnimated(0, 0, 0, clv.AsView.Width, Page1.RootPanel.Height*0.35)
p.LoadLayout("Page2")
lblTitle4.Text=Text
SB4.Tag=SB4
SB4.Value=50
RemoveClickRecognizer(p)
Return p
End Sub
Private Sub RemoveClickRecognizer (pnl As B4XView)
Dim no As NativeObject = pnl.Parent
Dim recs As List = no.GetField("gestureRecognizers")
For Each rec As Object In recs
no.RunMethod("removeGestureRecognizer:", Array(rec))
Next
End Sub
Dim p As B4XView = CreateForm4("Card "&i)
clv.Add(p,"")
RemoveClickRecognizer(p)
Is it possible to do on the capture and move B4XSeekBar so that the CLV move is blocked? Although this probably will not help with the fact that the finger can jump a little up or down ...You should call it after the panel is added to the CLV (see line 52 in the code you posted):
B4X:Dim p As B4XView = CreateForm4("Card "&i) clv.Add(p,"") RemoveClickRecognizer(p)
However it doesn't improve the behavior.
Maybe show a dialog with the seekbar when the user clicks on the item.
Not without a more complex touch handling. You can see an example in CLVSwipe, but it is a bit complicated.Is it possible to do on the capture and move B4XSeekBar so that the CLV move is blocked? Although this probably will not help with the fact that the finger can jump a little up or down ...
I meant that you can show the B4XSeekbar with B4XDialog.I used the B4XSeekBar to keep it consistent with Android and is a very handy element in general.
Thanks for the info. I'll probably try to replace the B4XSeekbar element with something else ...Not without a more complex touch handling. You can see an example in CLVSwipe, but it is a bit complicated.
I meant that you can show the B4XSeekbar with B4XDialog.