手机端刮刮乐效果组件ScratchView(android)
先展示一下效果:
![]() |
![]() |
![]() |
![]() |
如何实现:
1、下载ScratchView组件包:
2、编码实现:
#Region Project Attributes
#ApplicationLabel: B4A Example
#VersionCode: 1
#VersionName:
'SupportedOrientations possible values: unspecified, landscape or portrait.
#SupportedOrientations: unspecified
#CanInstallToExternalStorage: False
#End Region
#Region Activity Attributes
#FullScreen: False
#IncludeTitle: True
#End Region
Sub Process_Globals
'These global variables will be declared once when the application starts.
'These variables can be accessed from all modules.
End Sub
Sub Globals
'These global variables will be redeclared each time the activity is created.
'These variables can only be accessed from this module.
Private ScratchImageView1 As ScratchImageView
Private tvList As List
Private Label1 As Label
End Sub
Sub Activity_Create(FirstTime As Boolean)
'Do not forget to load the layout file created with the visual designer. For example:
Activity.LoadLayout("Layout3")
Dim bmp As Bitmap
bmp.Initialize(File.DirAssets,"6343909_191220566100_2.png")
Dim d As BitmapDrawable
d.Initialize(bmp)
ScratchImageView1.ImageDrawable = d
End Sub
Sub Activity_Resume
End Sub
Sub Activity_Pause (UserClosed As Boolean)
End Sub
Sub ScratchImageView1_onRevealed()
Log($"ScratchImageView1_onRevealed"$)
End Sub
Sub ScratchImageView1_PercentRevealed(percent As Double)
Log($"ScratchImageView1_PercentRevealed(${percent})"$)
End Sub
Sub ScratchText_PercentRevealed(percent As Double)
Log($"ScratchImageView1_PercentRevealed(${percent})"$)
End Sub
Sub ScratchText_onRevealed()
Log($"ScratchText_onRevealed"$)
Dim stv As ScratchTextView = Sender
Dim amount As Int = stv.Tag
Label1.Text = "$"&amount
End Sub
Sub ScratchText_onScratching(Scratched As Boolean)
Log($"ScratchText_onScratching"$)
Dim stv As ScratchTextView = Sender
For i = 0 To tvList.Size-1
Dim s As ScratchTextView = tvList.Get(i)
If s <> stv Then
s.Visible = False
End If
Next
End Sub





浙公网安备 33010602011771号