Ich möchte eine Ansicht von RecognizerIntent in Android überschreiben. Um dies zu tun, ich versuche, die RecognizerIntent Klasse in Android zu erweitern, wie folgt:erweitern Klasse mit privaten Konstruktor in anderen Paket
package com.example.myapp;
import android.content.Context;
import android.speech.RecognizerIntent;
public class RecInt extends RecognizerIntent {
public RecInt(Context c) {
super(c);
//if I don't call super here, there is an error 'There is no default constructor available in RecognizerIntent'
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_recint);
}
}
Aber ich erhalte den Fehler
RecognizerIntent() in android.speech.RecognizerIntent nicht öffentlich ist, kann nicht von außerhalb Paket zugegriffen werden.
Gibt es eine Möglichkeit, eine nicht öffentliche Klasse noch zu erweitern?
Ich möchte, dies zu tun, so dass, wenn RecInt
gestartet
Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
startActivityForResult(intent,100);
der Blick in setContentView(R.layout.activity_recint)
zeigt sich, anstelle der RecognizerIntent
Ansicht.
Umm. 'public class RecognizerIntent extends Objekt' ... –
Ändern Sie das Paket von' RecInt' in 'android.speech' –
Ich bin mir nicht sicher, was Sie versuchen zu tun, aber' RecognizerIntent' ist weder ein 'View' noch eine 'Aktivität'. –