增加音频功能
This commit is contained in:
parent
46fb891186
commit
1e322942c5
@ -131,7 +131,7 @@ public class ActionHelper
|
||||
case "TextTip":
|
||||
{
|
||||
var strAction = (XMLTool.StringListAction)act;
|
||||
return TextTipAction.Allocate(act.Value, strAction.args[0]);
|
||||
return TextTipAction.Allocate(act.Value, strAction.args[0], strAction.args[1]);
|
||||
}
|
||||
case "UIShow":
|
||||
{
|
||||
|
||||
@ -17,7 +17,8 @@ public class TextTipAction : IAction
|
||||
new SimpleObjectPool<TextTipAction>(() => new TextTipAction(), null, 10);
|
||||
string text = string.Empty;
|
||||
string btns = string.Empty;
|
||||
public static TextTipAction Allocate(string text, string btns, System.Action onDelayFinish = null)
|
||||
string audio = string.Empty;
|
||||
public static TextTipAction Allocate(string text,string audio , string btns, System.Action onDelayFinish = null)
|
||||
{
|
||||
var retNode = mPool.Allocate();
|
||||
retNode.ActionID = ActionKit.ID_GENERATOR++;
|
||||
@ -25,6 +26,7 @@ public class TextTipAction : IAction
|
||||
retNode.Reset();
|
||||
retNode.text = text;
|
||||
retNode.btns = btns;
|
||||
retNode.audio = audio;
|
||||
return retNode;
|
||||
}
|
||||
|
||||
@ -52,6 +54,7 @@ public class TextTipAction : IAction
|
||||
UITextTipData data = new UITextTipData();
|
||||
data.text = text;
|
||||
data.btns = btns.Split(',').ToList();
|
||||
data.audio = audio;
|
||||
UIKit.OpenPanelAsync<UITextTip>(uiData: data, canvasLevel: UILevel.PopUI).ToAction().StartGlobal(() => this.Finish());
|
||||
}
|
||||
|
||||
|
||||
@ -68,6 +68,7 @@ namespace QFramework.Example
|
||||
protected override void OnClose()
|
||||
{
|
||||
SetItem(0);
|
||||
loader.Recycle2Cache();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -9,11 +9,12 @@ namespace QFramework.Example
|
||||
public class UITextTipData : UIPanelData
|
||||
{
|
||||
public string text;
|
||||
|
||||
public string audio;
|
||||
public List<string> btns;
|
||||
}
|
||||
public partial class UITextTip : UIPanel
|
||||
{
|
||||
ResLoader loader;
|
||||
protected override void OnInit(IUIData uiData = null)
|
||||
{
|
||||
|
||||
@ -36,6 +37,19 @@ namespace QFramework.Example
|
||||
Hide();
|
||||
});
|
||||
}
|
||||
if (string.IsNullOrEmpty(mData.audio) == false)
|
||||
{
|
||||
string path = Global.audioPath + mData.audio;
|
||||
loader = ResLoader.Allocate();
|
||||
loader.Add2Load(path.ToLocalAudioResName(), (success, res) =>
|
||||
{
|
||||
if (success)
|
||||
{
|
||||
AudioKit.PlayVoice(res.Asset.As<AudioClip>(), false);
|
||||
}
|
||||
});
|
||||
loader.LoadAsync();
|
||||
}
|
||||
}
|
||||
|
||||
protected override void OnShow()
|
||||
@ -48,6 +62,7 @@ namespace QFramework.Example
|
||||
|
||||
protected override void OnClose()
|
||||
{
|
||||
loader.Recycle2Cache();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -551,6 +551,15 @@ namespace XMLTool
|
||||
case "TextTip":
|
||||
{
|
||||
var act = new StringListAction();
|
||||
XAttribute audio = action.Attribute("audio");
|
||||
if (audio != null)
|
||||
{
|
||||
act.args.Add(audio.Value);
|
||||
}
|
||||
else
|
||||
{
|
||||
act.args.Add("");
|
||||
}
|
||||
XAttribute btns = action.Attribute("btns");
|
||||
if (btns != null)
|
||||
{
|
||||
|
||||
@ -733,7 +733,7 @@
|
||||
</Reset>
|
||||
<Start>
|
||||
<Action type="Sequence">
|
||||
<Action type="TextTip" value="这里是文字描述" btns="确定,取消"/>
|
||||
<Action type="TextTip" value="这里是文字描述" audio="q001.mp3" btns="确定,取消"/>
|
||||
<Action type="Move" value="Main Camera" to="-3.206,3.24,-1.425" time="0"></Action>
|
||||
<Action type="Rotate" value="Main Camera" to="27.9597,270,2.899792E-06" time="0"></Action>
|
||||
<Action type="Btns" value="下一步"></Action>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user