有没有人有像WhatsApp这样的Android应用程序的示例或教程?我想了解WhatsApp如何工作以及如何编程.
我想看一个使用带有"online"-status和"read the message"-information 的消息聊天系统的例子.
我用谷歌但我一无所获.也许有人有小费.
谢谢.
在Intellij IDEA的最新版本中,当编写返回的scala方法Unit(也称为过程)时,IDEA将折叠该: Unit =部分,以便它显示为所谓的"过程语法".这是它的样子:
def myMethod(): Unit = {
// do something
}
Run Code Online (Sandbox Code Playgroud)
默认折叠为:
def myMethod() {
// do something
}
Run Code Online (Sandbox Code Playgroud)
我理解这一点,因为程序语法是针对弃用的,但有些人仍然喜欢它,我想这对他们来说是一个很好的折衷方案.但是,对于我们这些不喜欢过程语法的人,我无法找到默认情况下禁用该代码折叠的设置.首选项>编辑器>代码折叠确实显示了一些特定于scala的设置,默认情况下应折叠代码折叠,但我唯一检查过的是"Shell注释(scala脚本)".
有人知道如何禁用此功能吗?或者目前不可能吗?
我已经实现了一个自定义控件,使用了一个fxml文件和一个Java类,类似于本官方教程中的解释(参见下面的代码).请注意,fxml根元素是使用fx:root和我以setRoot编程方式调用的.
我已经尝试将控件包含在应用程序的FXML布局中,并且应用程序加载正常(并按预期显示控件).
但是,如果我尝试在Scene Builder 2.0中导入包含我的控件的jar文件,则该控件不会出现在要导入的组件列表中(与同一jar中的其他控件不同).如果我选择"显示JAR分析报告",则会显示由此引起的错误javafx.fxml.LoadException: Root value already specified.
你知道为什么我在Scene Builder中加载时会出现这个错误,即使它在实际应用程序中正确加载了吗?
这是FXML:
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.scene.control.*?>
<?import javafx.scene.image.ImageView?>
<?import javafx.scene.layout.*?>
<?import javafx.scene.text.Font?>
<fx:root type="javafx.scene.layout.GridPane" id="MediaMetadataDisplay" hgap="20.0" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="200.0"
prefWidth="600.0" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1">
<columnConstraints>
<ColumnConstraints fillWidth="false" hgrow="NEVER" maxWidth="-Infinity" minWidth="-Infinity" prefWidth="200.0"/>
<ColumnConstraints halignment="LEFT" hgrow="ALWAYS"/>
</columnConstraints>
<rowConstraints>
<RowConstraints maxHeight="-Infinity" minHeight="-Infinity" prefHeight="30.0" vgrow="SOMETIMES"/>
<RowConstraints maxHeight="-Infinity" minHeight="-Infinity" prefHeight="40.0" vgrow="SOMETIMES"/>
<RowConstraints maxHeight="-Infinity" minHeight="-Infinity" prefHeight="25.0" vgrow="SOMETIMES"/>
<RowConstraints maxHeight="-Infinity" minHeight="-Infinity" prefHeight="25.0" vgrow="SOMETIMES"/>
<RowConstraints maxHeight="-Infinity" minHeight="-Infinity" prefHeight="25.0" vgrow="SOMETIMES"/> …Run Code Online (Sandbox Code Playgroud) 下面的例子和解释很长,所以这里是我的问题的要点:当使用一个坚持执行字段注入的框架(在真正应该保持私有的字段)时,如何处理scalac的名称 - 私有字段的错误?
我正在使用ScalaFX/JavaFX和FXML在Scala中编写应用程序.当您使用FXML在JavaFX中定义视图时,FXML中定义的对象(例如按钮和文本字段)将通过以下方式注入控制器:
fx:idFXML元素添加属性@FXML注释和字段名称与fx:idFXML中定义的属性值匹配FXMLoader实例化控制器时,它会通过反射自动将带fx:id注释的元素注入到@FXML控制器的匹配注释字段中我不是现场注射的忠实粉丝,但这就是FXML的工作方式.但是,由于编译器在某些情况下执行的字段名称修改,我在Scala中遇到了意外的并发症......
这是一个示例应用程序:
test/TestApp.scala(没什么好玩的,只需要运行这个例子)
package test
import javafx.application.Application
import javafx.fxml.FXMLLoader
import javafx.scene.{Scene, Parent}
import javafx.stage.Stage
object TestApp {
def main(args: Array[String]) {
Application.launch(classOf[TestApp], args: _*)
}
}
class TestApp extends Application {
override def start(primaryStage: Stage): Unit = {
val root: Parent = FXMLLoader.load(getClass.getResource("/test.fxml"))
val scene: Scene = new Scene(root, 200, 200)
primaryStage.setTitle("Test")
primaryStage.setScene(scene)
primaryStage.show()
}
}
Run Code Online (Sandbox Code Playgroud)
test.fxml(视图)
<?xml version="1.0" encoding="UTF-8"?>
<?import …Run Code Online (Sandbox Code Playgroud) 只要我的骆驼路线中有正常流量,我就可以使身体进入下一个组成部分。但是,只要有异常(Http 401或500),我就无法获取异常主体。我在服务器日志中仅收到一个Java异常。我也尝试过onException()。使用它,当错误发生时流程就进入了流程,但是我仍然没有得到Web服务发送的错误响应正文(直接在使用POSTMAN时得到),我只得到了我发送到Web服务的正文中的请求。
同时添加路线:
from("direct:contractUpdateAds")
.to("log:inside_direct:contractUpdateAds_route_CompleteLog?level=INFO&showAll=true&multiline=true")
.streamCaching()
.setHeader(Exchange.HTTP_METHOD, constant("POST"))
.setHeader(Exchange.CONTENT_TYPE, constant("application/json"))
.log("before calling ADS for ContractUpdate:\nBody:${body}")
.to("{{AdsContractUpdateEndpoint}}")
.log("after calling ADS for ContractUpdate:\nBody:${body}")
.convertBodyTo(String.class)
.end();
Run Code Online (Sandbox Code Playgroud) javafx-8 ×2
scala ×2
android ×1
apache-camel ×1
chat ×1
esb ×1
fxml ×1
intellij-13 ×1
java ×1
javafx ×1
jbossfuse ×1
scalafx ×1
scenebuilder ×1
whatsapp ×1