小编use*_*971的帖子

如何禁用在Android中单击ListView?

我有一个ListView,我正在填充我的数据库中的值.如果数据库为空,我将ListView的第一项设置为"无数据".我想禁用点击此项目.我用过ArrayAdapter.我尝试制作areAllItemsEnabled,isEnabled为false,但它没用.即使我将ListView的isClickable和setEnabled设置为false,也没用.我将OnItemClickListener的代码放在else条件中,即使这样也不会阻止列表项被点击.有人有替代解决方案吗?谢谢!

android listview clickable

31
推荐指数
3
解决办法
3万
查看次数

如何设置Google OAuth的回调URL?

我正在使用 Google OAuth 对我的 GAE 应用程序中的用户进行身份验证。用户单击“授予访问权限”后,我想返回到我的应用程序。我尝试设置回调 URL,但它不是独立调用,而是附加到浏览器中的当前 URL,因此显示为无效 URL。

这是我的代码:

 OAuthGetTemporaryToken requestToken = new OAuthGetTemporaryToken(REQUEST_TOKEN_URL);
        requestToken.consumerKey = CONSUMER_KEY;
        requestToken.transport = TRANSPORT;
        requestToken.signer = signer;
        requestToken.callback="www.mail.yahoo.com";

        OAuthCredentialsResponse requestTokenResponse = requestToken.execute();

        // updates signer's token shared secret
        signer.tokenSharedSecret = requestTokenResponse.tokenSecret;

        OAuthAuthorizeTemporaryTokenUrl authorizeUrl = new OAuthAuthorizeTemporaryTokenUrl(AUTHORIZE_URL);
        authorizeUrl.temporaryToken = requestTokenResponse.token;
Run Code Online (Sandbox Code Playgroud)

此行将其发送到 Google OAuth 页面。

resp.sendRedirect(authorizeUrl.build());
Run Code Online (Sandbox Code Playgroud)

我已经设置了回调参数,如上所示,但它不起作用。请帮忙!提前致谢。

oauth callbackurl google-oauth

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

Cordova 后台获取插件不适用于 iOS

我想实现这个插件:https ://github.com/christocracy/cordova-plugin-background-fetch 。我使用 CLI 安装了该插件,然后将 BackgroundFetch.js 文件复制到我的 www 目录并在 index.html 中引用它。我将 git url 中给出的示例代码放置在 DeviceReady 函数中。尽管如此,在启动时我还是遇到了错误:

类型错误:“未定义”不是对象(正在评估“Fetcher.configure”)

有人可以告诉我为什么会发生这种情况吗?我已经尝试了两天但没有成功。任何帮助将不胜感激。提前致谢!


EDIT1:抱歉我之前没有提到,我使用命令行创建了一个 cordova 项目并添加了如上所述的插件,然后在 iOS 模拟器和 iPhone 4S 上运行它。两者都给出相同的错误。我将代码包装在 try-catch 块中并发出错误警报,这就是出现的错误。

看到Clawish的建议后,我删除了js文件及其引用,并再次删除并添加了插件。现在我没有收到任何错误,但我在日志中没有看到“CDVBackgroundFetch 配置”。如果我在模拟器上模拟后台提取,则会收到错误: -

CDVBackgroundFetch onFetch
警告:应用程序委托收到对 -application:performFetchWithCompletionHandler: 的调用,但从未调用完成处理程序。

我哪里错了?除了添加示例代码以在 onDeviceReady 中调用 Fetcher.configure 之外,我没有对代码进行任何更改


编辑2:

在看到你的 Clawfish 的第二次编辑后,我删除了服务调用并缩短了函数,如下所示:

onDeviceReady: function() {
app.receivedEvent('deviceready');

var Fetcher = window.plugins.backgroundFetch;

// Your background-fetch handler.
var fetchCallback = function() {
    console.log('BackgroundFetch initiated');
    Fetcher.finish();
}
Fetcher.configure(fetchCallback);
},
Run Code Online (Sandbox Code Playgroud)

尽管如此,我没有看到任何日志消息说“CDVBackgroundFetch 配置”,并且在模拟后台获取时出现与上面相同的警告。看起来 Fetch 部分是在没有首先运行配置的情况下执行的。

plugins cordova ios7

5
推荐指数
1
解决办法
1519
查看次数