002 [Xamarin] Android Text To Speech 簡單實作

Post date: 2015/12/8 上午 11:59:34

原作者 http://no2don.blogspot.com/search/label/Xamarin

因為公司案子需要,簡單的用Xamarin 念出一段英文

趁有時間紀錄一下簡單的筆記

image

範例很簡單,按下按鈕後就是會說一些英文。

1.先將Avtivity 多繼承 TextToSpeech.IOnInitListener

 [Activity(Label = "TestTTS", MainLauncher = true, Icon = "@drawable/icon")]  
 public class MainActivity : Activity, TextToSpeech.IOnInitListener  
 {  
    ...  

2.當然因為繼承他必須要實作 void TextToSpeech.IOnInitListener.OnInit(OperationResult status)

不過,放空就可以了除非你要處理init後的動作

3.最後就是呼叫的部分在OnCreate時候先做TextToSpeech 的Init

之後就是呼叫讓他說話的部分

// Interface method required for IOnInitListener

void TextToSpeech.IOnInitListener.OnInit(OperationResult status)

{

}

protected override void OnCreate(Bundle bundle)

{

base.OnCreate(bundle);

SetContentView(Resource.Layout.Main);

tts = new TextToSpeech(this.ApplicationContext, this);

tts.SetLanguage(Java.Util.Locale.Default);

Button button = FindViewById<Button>(Resource.Id.MyButton);

button.Click += Button_Click;

}

private void Button_Click(object sender, EventArgs e)

{

String text1 = "Hello,Donma.";

String text2 = "Good Night and hava a nice day.";

tts.Speak(text1, QueueMode.Flush, null);

tts.Speak(text2, QueueMode.Add, null);

}

4.如果你沒有發出聲音,請你在設定裡面,選擇其他進階設定,協助工具,裡面的文字轉語音輸出看看是否有設定。

5.結果

標籤: Android , C# , Xamarin

--