我正在阅读斯卡拉食谱(http://shop.oreilly.com/product/0636920026914.do)
有一个与未来使用相关的例子涉及到理解.
到目前为止,我对理解的理解是,当与集合一起使用时,它将产生具有相同类型的另一个集合.例如,如果每个 futureX都是类型Future[Int],则以下也应该是类型Future[Int]:
for {
r1 <- future1
r2 <- future2
r3 <- future3
} yield (r1+r2+r3)
Run Code Online (Sandbox Code Playgroud)
有人可以解释一下<-在这段代码中使用时究竟发生了什么吗?我知道如果它是一个生成器,它将通过循环获取每个元素.
我正在开发一个将使用Myo臂章的Android应用程序.我希望将其作为辅助功能服务来实现,以便臂带检测到的手势可以,例如导航回家等.
我正在尝试初始化集线器,但应用程序因以下错误堆栈而停止:
01-06 23:42:41.222 11979-11979/eu.miko.myoid E/AndroidRuntime: FATAL EXCEPTION: main
Process: eu.miko.myoid, PID: 11979
java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/eu.miko.myoid-1/base.apk"],nativeLibraryDirectories=[/data/app/eu.miko.myoid-1/lib/arm, /vendor/lib, /system/lib]]] couldn't find "libgesture-classifier.so"
at java.lang.Runtime.loadLibrary(Runtime.java:367)
at java.lang.System.loadLibrary(System.java:1076)
at com.thalmic.myo.scanner.Scanner.<clinit>(Scanner.java:31)
at com.thalmic.myo.Hub.init(Hub.java:201)
at eu.miko.myoid.MyoidAccessibilityService.onCreate(MyoidAccessibilityService.java:21)
at android.app.ActivityThread.handleCreateService(ActivityThread.java:2877)
at android.app.ActivityThread.-wrap4(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1427)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5417)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
Run Code Online (Sandbox Code Playgroud)
根据Myo文档,这是我用于集线器初始化的代码.我已经尝试将它放在辅助功能服务的onCreate和onServiceConnected方法中,无论如何都会出现错误.
Hub hub = Hub.getInstance();
if (hub.init(this, getPackageName())) {
Intent intent = new Intent(this, ScanActivity.class);
startActivity(intent);
hub.setLockingPolicy(Hub.LockingPolicy.NONE);
hub.addListener(mListener);
}
else {
Log.e(TAG, "Could not initialize the Hub."); …Run Code Online (Sandbox Code Playgroud) 我正在做一些原型设计来通知我的代码,但我遇到了一个问题,我无法确定来源。我正在尝试在屏幕上所有可访问的可点击项目周围绘制矩形(框架),但我的框架最终会发生水平移动。这种转变似乎是恒定的,所以我知道我可以将它作为一个黑客来抵消,但我正在寻找它的来源,因为我试图更好地理解这个领域。这是我的代码。
在屏幕上的所有视图上调用的函数:
private void drawFrameIfClickable(AccessibilityNodeInfo accessibilityNodeInfo) {
boolean clickable;
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP) {
clickable = accessibilityNodeInfo.getActionList().contains(AccessibilityNodeInfo.AccessibilityAction.ACTION_CLICK);
} else {
clickable = (accessibilityNodeInfo.getActions() & AccessibilityNodeInfo.ACTION_CLICK) > 0;
}
if (clickable) {
Rect rect = new Rect();
accessibilityNodeInfo.getBoundsInScreen(rect);
View view = new FrameView(mas, rect);
ViewGroup.LayoutParams params = new WindowManager.LayoutParams(
WindowManager.LayoutParams.WRAP_CONTENT, WindowManager.LayoutParams.WRAP_CONTENT,
rect.left, rect.top,
WindowManager.LayoutParams.TYPE_SYSTEM_OVERLAY,
WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE
| WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS
| WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN
| WindowManager.LayoutParams.FLAG_FULLSCREEN,
PixelFormat.TRANSLUCENT);
cursorParams.gravity = Gravity.TOP | Gravity.LEFT;
windowManager.addView(view, params);
highlights.add(view);
}
}
private class FrameView extends View {
private final Paint …Run Code Online (Sandbox Code Playgroud) 我正在使用H2-DB访问静态数据库......
我有一张桌子,看起来像:
COUNTRY STATE CITY LAT LNG COUNTRYID STATEID CITYID
"Germany" "Berlin" "" 1.23 1.23 1 1 0
"Germany" "München" "" 1.23 1.23 1 2 0
"USA" "Alabama" "Auburn" 1.23 1.23 2 1 1
"USA" "Alabama" "Birmingham" 1.23 1.23 2 1 2
"USA" "Alaska" "Anchorage" 1.23 1.23 2 2 1
"USA" "Alaska" "Cordova" 1.23 1.23 2 2 2
Run Code Online (Sandbox Code Playgroud)
它是一个包含许多国家的巨大名单,其中大多数只有国家和州(如德国,而国家是城市),少数也有城市(如美国这里)......
问题是现在,当我查询
SELECT * FROM MyTable WHERE COUNTRY = 'Germany' group by STATE order by STATE
Run Code Online (Sandbox Code Playgroud)
为了获得状态(或城市)的排序列表,我得到一个错误说
Field CITY must be in …Run Code Online (Sandbox Code Playgroud)