Frage

Hier ist mein Aidl PlayerHandleService.aidl:

interface PlayerHandleService {
    void changeTextView();
}

Die OnCreate () auf meine Aktivität: Player_Activity:

@Override
protected void onCreate(Bundle savedInstanceState) {
    this.bindService(new Intent(this,PlayerService.class), mConnection, Context.BIND_AUTO_CREATE);
}

Die mconnection:

private ServiceConnection mConnection = new ServiceConnection() {

    @Override
    public void onServiceDisconnected(ComponentName name) {
        // TODO Auto-generated method stub
        mpInterface=null;
    }

    @Override
    public void onServiceConnected(ComponentName name, IBinder service) {
        // TODO Auto-generated method stub
        mpInterface = PlayerHandleService.Stub.asInterface(service);
    }
};

Jetzt haben Sie in meiner Aktivität (Player_Activity) eine Textansicht und ich möchte Methoden -ChangEtextView () in der AIDL verwenden, um den Inhalt dieser Textansicht zu ändern, wie kann ich das tun?

War es hilfreich?

Lösung

Du nicht. Ihre Aktivität verändert seine eigene TextView.

Wenn Ihr Dienst die Aktivität mitteilt, dass Sie etwas tun sollen, können Sie einen benutzerdefinierten Listener oder eine Sendung verwenden Intent, oder ein Messenger, oder createPendingResult(), oder wahrscheinlich auch andere Techniken.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top