无法找到完整的解决方案代码。 我无法弄清楚如何使用文本到语音inonlistner事件。 当我输入:Android.Speech.Tts我没有在Tts.TextToSpeech之后但是在互联网上的所有例子中我都看到了Tts之后的TextToSpeech。
我在android sdk管理器中下载了所有软件包。 而且我无法弄清楚如何在主要活动中实现txt到语音代码。
我在一些例子中看到了TextTospeech的这个实例(这个,这个),但我收到了错误。
我现在在visual studio上尝试过:新项目> android>空白的应用程序(android) 我在android studio和xamarin studio上都试过了。在所有情况下,我都无法弄清楚如何实现texttospeech。
using System;
using Android.App;
using Android.Content;
using Android.Runtime;
using Android.Views;
using Android.Widget;
using Android.OS;
using Android.Speech.Tts;
namespace App1
{
[Activity(Label = "App1", MainLauncher = true, Icon = "@drawable/icon")]
public class MainActivity : Activity
{
int count = 1;
TextToSpeech tts = new TextToSpeech(this, this);
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
// Set our view from the "main" layout resource
SetContentView(Resource.Layout.Main);
// Get our button from the layout resource,
// and attach an event to it
Button button = FindViewById<Button>(Resource.Id.MyButton);
button.Click += delegate {
button.Text = string.Format("{0} clicks!", count++);
};
}
}
}
错误在线:
TextToSpeech tts = new TextToSpeech(this, this);
错误4参数2:无法从'App1.MainActivity'转换为'Android.Speech.Tts.TextToSpeech.IOnInitListener'
和
错误1关键字'this'在当前上下文中不可用
和
错误3“Android.Speech.Tts.TextToSpeech.TextToSpeech(Android.Content.Context,Android.Speech.Tts.TextToSpeech.IOnInitListener)”的最佳重载方法匹配有一些无效的参数
到目前为止我尝试了什么:
在Visual Studio中,当我创建一个新的Android解决方案时,我在MainActivity.cs文件中获得了此代码,并添加了TextToSpeech变量和实例:
using System;
using Android.App;
using Android.Content;
using Android.Runtime;
using Android.Views;
using Android.Widget;
using Android.OS;
using Android.Speech.Tts;
namespace App3
{
[Activity(Label = "App3", MainLauncher = true, Icon = "@drawable/icon")]
public class MainActivity : Activity
{
int count = 1;
private EditText write;
TextToSpeech ttobj = getApplicationContext(), new TextToSpeech.OnInitListener() {
@Override
public void onInit(int status) {
}
}
);
// TextToSpeech listener = new TextToSpeech(Context.te);
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
// Set our view from the "main" layout resource
SetContentView(Resource.Layout.Main);
// Get our button from the layout resource,
// and attach an event to it
Button button = FindViewById<Button>(Resource.Id.MyButton);
button.Click += delegate { button.Text = string.Format("{0} clicks!", count++); };
}
}
}
只添加TextToSpeech ttobj很好但是一旦我尝试实例它就会出错:getApplicationContext()
这不存在,那么OnInitListener()
也不存在。找不到@Override
你错过了....等公共场所:
错误3成员修饰符'public'必须位于成员类型和名称
之前
所以我猜我错了,搞砸了。