2016-05-26 14 views
0

Ich verstehe, dass JavaFX Alert kann noch nicht mit mobilen Apps verwendet werden. Aber was ist mit dem Gluon Charm Alert?Probleme mit Gluon Charm Alert

Ich habe ein Gluon Mobile MultiView FXML-Projekt definiert. Ich habe die Abhängigkeiten des Gradle-Projekts aktualisiert, um charm-2.2.0.jar einzuschließen, sodass die Gluon Charm Alert-Klasse verfügbar ist. Um es zu verwenden, benötigen Sie auch Zugriff auf javafx.scene.control.Alert.AlertType.

Ich habe anscheinend keinen Kompilierzeit-Zugriff auf die obige AlertType-Klasse.

Ich verwende NetBeans 8.1 mit dem neuesten Gluon/Gradle Plug-in auf einem Mac mit OS X 10.11.14. Gibt es eine zusätzliche Konfigurationsabhängigkeit, die ich definieren muss?

Vielen Dank im Voraus für jede Hilfe.

Hier ist meine build.gradle Datei.

buildscript { 
    repositories { 
     jcenter() 
    } 
    dependencies { 
     classpath 'org.javafxports:jfxmobile-plugin:1.0.8' 
    } 
} 

apply plugin: 'org.javafxports.jfxmobile' 

repositories { 
    jcenter() 
    maven { 
     url 'http://nexus.gluonhq.com/nexus/content/repositories/releases' 
    } 
} 

mainClassName = 'com.capitals.Capitals' 

dependencies { 
    compile 'com.gluonhq:charm:2.2.0' 
    androidRuntime 'com.gluonhq:charm-android:2.2.0' 
    iosRuntime 'com.gluonhq:charm-ios:2.2.0' 
    desktopRuntime 'com.gluonhq:charm-desktop:2.2.0' 
} 

jfxmobile { 
    android { 
     manifest = 'src/android/AndroidManifest.xml' 
    } 
    ios { 
     infoPList = file('src/ios/Default-Info.plist') 
     forceLinkClasses = [ 
       'com.asgteach.capitals.**.*', 
       'com.gluonhq.**.*', 
       'io.datafx.**.*', 
       'javax.annotations.**.*', 
       'javax.inject.**.*', 
       'javax.json.**.*', 
       'org.glassfish.json.**.*' 
     ] 
    } 
} 

Antwort

0

können Sie JavaFX zugreifen Alert.AlertType Klasse, ohne die Notwendigkeit, jede Abhängigkeit der Zugabe.

Vergewissern Sie sich, dass Sie die neueste Version des Jfxmobile-Plugins (1.0.8) verwenden.

Dies funktioniert auf Desktop und mobil:

import com.gluonhq.charm.glisten.control.Alert; 
import com.gluonhq.charm.glisten.control.AppBar; 
import com.gluonhq.charm.glisten.mvc.View; 
import com.gluonhq.charm.glisten.visual.MaterialDesignIcon; 
import javafx.scene.control.Alert.AlertType; 
import javafx.scene.control.Button; 
import javafx.scene.layout.StackPane; 

public class BasicView extends View { 
    public BasicView(String name) { 
    super(name); 
    Button button = new Button("Show alert"); 
    button.setOnAction(e -> { 
     Alert alert = new Alert(AlertType.INFORMATION, "This is an Alert!"); 
     alert.showAndWait(); 
    }); 
    setCenter(new StackPane(button)); 
    } 
} 

Wenn es nicht der Fall ist für Sie, Posten Sie Ihre build.gradle und jede Ausnahme, die Sie haben.

+0

Vielen Dank, José, für Ihre schnelle Antwort. Tatsächlich läuft der von Ihnen gepostete Code problemlos. NetBeans gibt mir jedoch einen roten Zeilenkompilierungsfehler mit der Nachricht: "Der Typ der Warnung (AltertType, String) ist fehlerhaft. Das Paket javafx.scene.control.Alert existiert nicht." –

+0

Sie sollten sowohl JavaFX als auch Gluons Alert ausführen können. Was ist dein JDK? JavaFX Alert ist seit 8u40 verfügbar, aber Gluon bündelt bereits 8u60. –

+0

JDK nach NetBeans Java-Plattform ist jdk1.8.0_74.jdk. –

Verwandte Themen