رفتن به مطلب
  • 0

تغییر لیست پخش صدا


mohammade79

سوال

سلام عزیزان من یه برنامه دارم گیتاره ، با soundpool زدم ، مولتی تاچ روش هست ولی وقتی میخوام لیست صدا ها رو عوض کنم اجرا نمیکنه مشکل چیه میشه کمک کنید؟ چیجوری میتونم لیست صدا رو جایگزین کنم؟

Sub Activity_Create(FirstTime As Boolean)
	
	phonewake.KeepAlive(True)
	
	Activity.LoadLayout("mainguitar")
	
	list_TOUCHING.Initialize
	list_TOUCHED.Initialize
	Ges.SetOnTouchListener(Activity, "GesturesTouch")
	TouchMap.Initialize
	
	achord="loadsound"

	setallpanels
	mc1.Initialize2("mc1")
	mc2.Initialize2("mc2")
	mc3.Initialize2("mc3")
	Panel1.Visible=False
	
	AndroidViewAnimations1.Initialize("AndroidViewAnimations1")
	

	If piano_mp.IsInitialized = True Then Return
	piano_mp.Initialize(6)
	For i = 0 To pnl_keys.Length-1

		piano_mp.Load(File.DirAssets, i & ".mp3")
	Next
end sub 

Sub setallpanels
	pnl_keys(0) = key1
	pnl_keys(1) = key2
	pnl_keys(2) = key3
	pnl_keys(3) = key4
	pnl_keys(4) = key5
	pnl_keys(5) = key6
End Sub



Sub Activity_Resume


End Sub

Sub Activity_Pause (UserClosed As Boolean)
	setallkeystofalse
End Sub

Sub setallkeystofalse
	list_TOUCHING.Clear
	list_TOUCHING.Clear
	TouchMap.Clear
	resetcolors
End Sub

Sub resetcolors

End Sub

Sub GesturesTouch(View As Object, PointerID As Int, Action As Int, X As Float, Y As Float) As Boolean
	Dim p As Point
	Select Action
		Case Ges.ACTION_DOWN, Ges.ACTION_POINTER_DOWN
			p.Id = PointerID
			TouchMap.Put(PointerID, p)
		Case Ges.ACTION_POINTER_UP
			TouchMap.Remove(PointerID)
		Case Ges.ACTION_UP
			setallkeystofalse
	End Select

	list_TOUCHING.Clear 'reset touching list
	For i = 0 To TouchMap.Size - 1
		Dim px, py As Int
		p = TouchMap.GetValueAt(i)
		px = Ges.GetX(p.id)
		py = Ges.GetY(p.id)
		For Each pnl As Panel In pnl_keys
			If px > pnl.Left And px < pnl.Left + pnl.Width Then
				If py > pnl.Top And py < pnl.Top + pnl.Height Then
					If pnl.Tag > 4 Then
						If list_TOUCHED.IndexOf("0") > -1 Or list_TOUCHED.IndexOf("1") > -1 Or  list_TOUCHED.IndexOf("2") > -1 Or list_TOUCHED.IndexOf("3") > -1 Or list_TOUCHED.IndexOf("4") > -1 Then
							If py < pnl_keys(0).Height Then
								If pnl.Tag = "5" Or pnl.Tag = "6" Then 'right side
									If px > (pnl.Left + pnl.Width) - (pnl_keys(0).Width / 2) Then Continue
								else if pnl.Tag = "6" Or pnl.Tag = "11" Then 'left side
									If px < pnl.Left + (pnl_keys(0).Width / 2) Then Continue
								else if pnl.tag = "6" Then
									'do nithing - full white key
								Else
									If px > (pnl.Left + pnl.Width) - (pnl_keys(0).Width / 2) Or px < pnl.Left + (pnl_keys(0).Width / 2) Then Continue
								End If
							End If
						End If
					End If
					
					list_TOUCHING.Add(pnl.Tag)
					If list_TOUCHED.IndexOf(pnl.Tag) = -1 Then
						list_TOUCHED.Add(pnl.Tag)
						
						If achord="loadsound" Then
							piano_mp.Play(pnl.Tag+1,1,1,1,0,1)
						Else If achord="am" Then
								piano_mp1.Play(pnl.Tag+1,1,1,1,0,1)
					end if 
                                                                     
                    end sub

 

در واقع کد جایگزاری فایل موسیقی این کد هست 

If piano_mp.IsInitialized = True Then Return
	piano_mp.Initialize(6)
	For i = 0 To pnl_keys.Length-1

		piano_mp.Load(File.DirAssets, i & ".mp3")
	Next

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

0 پاسخ به این سوال تاکنون داده شده است

ارسال‌های توصیه شده

هنوز برای این سوال پاسخی ارسال نشده است

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...