Es sieht so aus, als ob du versuchst, ein Objekt der Klasse
DeviceControlActivity innerhalb der Klasse SettingsFragmentForBLT
verfügbar zu machen. Hierfür musst du jedoch nicht den Konstruktor von
DeviceControlActivity überladen. Stattdessen kannst du einfach eine
Instanz von DeviceControlActivity in SettingsFragmentForBLT erstellen
und auf ihre öffentlichen Methoden zugreifen.
Hier ist ein Beispiel, wie du das machen kannst:
In SettingsFragmentForBLT:
// Erstelle eine Instanz von DeviceControlActivity
DeviceControlActivity deviceControlActivity = (DeviceControlActivity)
getActivity();
// Rufe die öffentliche Methode toggleLEDGren auf
deviceControlActivity.toggleLEDGren();
// Rufe die öffentliche Methode getmBluetoothLeService auf, um auf das
Bluetooth-Service-Objekt zuzugreifen
BluetoothLeService msBluetoothLeService =
deviceControlActivity.getmBluetoothLeService();
// Schreibe Daten an das Bluetooth-Gerät
msBluetoothLeService.writeCustomCharacteristic(53);
In DeviceControlActivity:
// Definiere eine öffentliche Methode, um das Bluetooth-Service-Objekt
zurückzugeben
public BluetoothLeService getmBluetoothLeService() {
return mBluetoothLeService;
}
Hinweis: Stelle sicher, dass die Instanz von DeviceControlActivity in
SettingsFragmentForBLT nicht null ist, bevor du auf ihre Methoden
zugreifst. Du solltest auch sicherstellen, dass das Bluetooth-Gerät
korrekt verbunden und gekoppelt ist, bevor du versuchst, Daten an das
Gerät zu senden.