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.