我试图做的是:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ArrayList<String> voiceResults = getIntent().getExtras()
.getStringArrayList(RecognizerIntent.EXTRA_RESULTS);
Card ShowDataCard = new Card(this);
ShowDataCard.setText(voiceResults);
View ShowDataCardView = ShowDataCard.toView();
setContentView(ShowDataCardView);
}
解决方法失败:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
String voiceResults = getIntent().getExtras()
.getString(RecognizerIntent.EXTRA_RESULTS);
Card ShowDataCard = new Card(this);
ShowDataCard.setText(voiceResults);
View ShowDataCardView = ShowDataCard.toView();
setContentView(ShowDataCardView);
}
字符串voiceResults是无法解决的问题,因为我无法将.setText转换为arraylist字符串
实际的语音识别代码:
ArrayList<String> voiceResults = getIntent().getExtras()
.getStringArrayList(RecognizerIntent.EXTRA_RESULTS);
基本上,我试图保存这种语音识别(打算使用SharedPreferences),但是由于某种原因,它是一个arraylist字符串,而不仅仅是一个字符串。有人知道如何将其另存为字符串吗? (或发布带有arraylist字符串的活动)
最佳答案
由于结果是字符串的ArrayList
,因此应检查列表的size()
至少为1,然后调用voiceResults.get(0)
以获取字符串。