小编Dhr*_*ada的帖子

AsyncTask:doInBackground()的返回值在哪里?

调用时AsyncTask<Integer,Integer,Boolean>,其返回值为:

protected Boolean doInBackground(Integer... params)

通常我们启动AsyncTask new AsyncTaskClassName().execute(param1,param2......);但它似乎没有返回值.

哪里可以doInBackground()找到返回值?

android return-value android-asynctask

61
推荐指数
2
解决办法
9万
查看次数

为什么absolutelayout被弃用了?

为什么absolutelayout被弃用了?我知道它可能会导致支持多个屏幕的问题,但更适合在特定位置显示视图.

android absolutelayout

7
推荐指数
1
解决办法
1万
查看次数

Flutter Web 中 JS 调用 Dart 方法

对于 Webview 相关功能,我使用方法通道通过本机 Android 和 iOS 代码打开 Webview,并且我在其中打开一个网站,我在移动平台中从 JS 回调到本机代码。\n对于 Android,我提供了一个类,其方法正在从 JS 调用,\n它看起来像这样:

\n
webView.settings.javaScriptEnabled = true\nwebView.addJavascriptInterface(WebAppInterface(this), "nativeCommunicator")\n\nwebView.loadUrl("SOME_URL")\n\n\xe2\x80\xa6\n\nclass WebAppInterface(private val mContext: Activity) {\n\xc2\xa0\xc2\xa0@JavascriptInterface\n\xc2\xa0\xc2\xa0fun postMessage(text: String) {\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0println("WebAppInterface.message($text)")\n    //send back to flutter\n\xc2\xa0\xc2\xa0}\n}\n
Run Code Online (Sandbox Code Playgroud)\n

这似乎是从 js 回调到我的代码的非常简单的方法。

\n

现在我尝试在 Flutter Web 中执行此操作\n我通过调用打开了该网站

\n
import 'package:js/js.dart';\n...\njs.context.callMethod('open', 'SOME_URL', '_self');\n
Run Code Online (Sandbox Code Playgroud)\n

效果很好,现在我尝试通过创建此类来获取回调

\n
@JS()\nlibrary native_communicator;\n\nimport 'package:js/js.dart';\n@JS('nativeCommunicator')\nclass NativeCommunicator{\n\n\xc2\xa0@JS('postMessage')\n\xc2\xa0external static set _postMessage(void Function(String text) f);\n\n\n\xc2\xa0@JS()\n\xc2\xa0external static void postMessage();\n\n}\n\nvoid setJSCallbackFunction(void Function(String text) postMessageFunction) {\n\xc2\xa0NativeCommunicator._postMessage = allowInterop(postMessageFunction);\n}\n
Run Code Online (Sandbox Code Playgroud)\n

我正在调用 setJSCallbackFunction 并将我的函数作为参数传递,但它一直给我运行时错误\n它找不到 \xe2\x80\x98postMessage\xe2\x80\x99,我尝试了其他方法,导致找不到 \xe2 \x80\x98nativeCommunicator\xe2\x80\x99 错误,\n谁能指出如何正确执行此操作?\n我需要从 js 调用 dart 方法。

\n

javascript flutter flutter-web

7
推荐指数
2
解决办法
8916
查看次数

TextField - 在用户开始键入文本之前显示提示

我正在开发一个Blackberry应用程序.我希望在用户开始输入之前在TextField中显示一个提示文本.当用户开始输入时它应该消失,当TextField中有0个字符时它应该显示出来.有人实现了吗?然后请分享.

blackberry hint textfield

4
推荐指数
1
解决办法
4388
查看次数

获取电子邮件ID的联系人

我需要通过电子邮件获取联系人信息(光标).它们必须是截然不同的 如果他收到电子邮件,每个联系人必须有一个条目.怎么做?我的目标是新的联系人API附带2.0.

1)我尝试使用CursorJoiner来做,但发生了一件奇怪的事情.这是我的代码:

MatrixCursor matCur = new MatrixCursor(
            new String[]{
            Contacts._ID,
                Contacts.DISPLAY_NAME,
                "photo_id",
                "starred"
            }
        );

Cursor newContactCursor = managedQuery(
        ContactsContract.Contacts.CONTENT_URI,
            new String[]{
                Contacts._ID,
                Contacts.DISPLAY_NAME,
                "photo_id",
                "starred"
            },
            null,
            null,
            null//Contacts._ID 
        );

newContactCursor.moveToFirst();

Cursor emailCur = managedQuery(
        ContactsContract.CommonDataKinds.Email.CONTENT_URI,
            new String[] {  
                Email.CONTACT_ID,
                Email.DATA1
            },
            null,
            null,
            Email.CONTACT_ID
        );

            emailCur.moveToFirst();

CursorJoiner joiner = new CursorJoiner(
        newContactCursor, 
            new String[]{Contacts._ID}, 
            emailCur, 
            new String[] {Email.CONTACT_ID}
        );

for (CursorJoiner.Result joinerResult : joiner) {
        switch (joinerResult) {

        case LEFT:
        // handle case where a row in …
Run Code Online (Sandbox Code Playgroud)

email android cursor contactscontract

2
推荐指数
1
解决办法
6899
查看次数