小编Mat*_*teu的帖子

Google Maps Android可在位置感知地图中检测用户互动

我有一个显示地图的Android应用程序.默认情况下,地图以其移动后的用户位置为中心(中心根据位置更新进行更新).

但是我希望用户能够使用手势来导航地图.当用户开始导航时,我希望"跟随"停止,并显示一个按钮,以便它可以重新开始.

如何知道用户何时移动地图中心?在GoogleMap.OnCameraChangeListener上,我不知道更改是由于位置更改还是用户交互.我有一个使用OnCameraChangeListener的工作解决方案,但它有点"脏",我觉得它不是很好:

map.setOnCameraChangeListener(new GoogleMap.OnCameraChangeListener() {
        @Override
        public void onCameraChange(CameraPosition position) {
                            // gpsPosition contains the last position obtained
            if(isFollowing && gpsPosition!=null && (Math.abs(position.target.latitude - gpsPosition.latitude)>0.000001 || Math.abs(position.target.longitude - gpsPosition.longitude)>0.000001) ){
                isFollowing = false;
                map.getUiSettings().setMyLocationButtonEnabled(true);
            }

        }
    }); 
Run Code Online (Sandbox Code Playgroud)

这个问题有一个很好的解决方案吗?

android google-maps

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

将android库发布到jcenter:gradle bintrayUpload找不到库

我正在尝试将一个Android库发布到jcenter.我已经关注了https://github.com/danielemaddaluno/gradle-jcenter-publish教程.一切正常,直到我尝试执行

gradle bintrayUpload

当我这样做时,我得到了建筑失败.当我看到我看到的错误时

package com.android.volley does not exist

因此,我找不到作为gradle依赖项包含的库

dependencies {
     compile 'com.mcxiaoke.volley:library:1.+' (...)
}
Run Code Online (Sandbox Code Playgroud)

包含其他库的情况也是如此.

我该如何解决这个问题?

我附上模块build.gradle

apply plugin: 'com.android.library'
apply plugin: 'com.github.dcendents.android-maven'
apply plugin: "com.jfrog.bintray"

android {
    compileSdkVersion 21
    buildToolsVersion "21.1.2"

    defaultConfig {
        minSdkVersion 8
        targetSdkVersion 22
        versionCode 1
        versionName "0.0.1"
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }
}

dependencies {
    compile 'com.mcxiaoke.volley:library:1.+'
    compile 'com.shamanland:fab:0.0.8'
    compile 'com.google.code.gson:gson:2.2.4'
    compile 'com.android.support:appcompat-v7:22.0.0'
    compile 'com.android.support:gridlayout-v7:21.0.3'
}

def siteUrl = "SOME_URL"
def gitUrl = 'SOME_URL' …
Run Code Online (Sandbox Code Playgroud)

android gradle maven android-gradle-plugin jcenter

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

如何使用 Ruby 在 Selenium WebDriver 远程设置 Firefox 配置文件

我想为以下驱动程序设置 Firefox 配置文件:

driver = Selenium::WebDriver.for :remote, :url => "http://localhost:4444/wd/hub", :desired_capabilities => :firefox
Run Code Online (Sandbox Code Playgroud)

我尝试添加:

profile = Selenium::WebDriver::Firefox::Profile.new
profile['browser.download.downloadDir'] = '/home/seluser'
driver = Selenium::WebDriver.for :remote, :url => "http://localhost:4444/wd/hub", :desired_capabilities => :firefox, :profile => profile
Run Code Online (Sandbox Code Playgroud)

但配置文件选项不存在

谢谢

ruby firefox selenium selenium-webdriver

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

Android:如何在推送到服务器之前将新生成的模型存储在数据库中(id问题)

我有一个 Android 应用程序,它连接到服务器 api (CRUD) 来管理模型。该应用程序需要离线工作,因此该应用程序有一个数据库来存储从服务器提取的数据。

模型的实例有一个名为 ID 的属性,该属性是在服务器中创建的。

为了执行创建离线操作我遇到了一个难题。由于没有连接,我需要将实体存储到数据库,但它还没有 id。哪个是最好的通用解决方案?

我是否应该在数据库中添加第二个属性,即“临时 ID”(例如使用 UID)?也许我不将这些数据添加到数据库中,而是添加到临时队列中?与该实体的关系会发生什么情况?

sqlite android

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

在第一个模型中使用belongs_to关联的作用域进行作用域-Ruby on Rails

问题

可以说我有两个具有has_many-belongs_to关系的模型。has_many具有定义的范围和名为grade的整数属性。

class Parent < ApplicationRecord
  has_many :children
  scope :great, -> (min_grade) {where("grade > :grade", grade: min_grade)}
end

class Child < ApplicationRecord
  belongs_to :parent
end
Run Code Online (Sandbox Code Playgroud)

我想在子模型上创建一个范围,该范围使用父模型的范围。

无论如何,我可以在Parent上使用作用域的定义吗?

当前解决方案

我现在做的方式是

class Child < ApplicationRecord
  belongs_to :parent
  scope :wit_great_parent, -> (min_grade) {
        join(:parent).where("grade > :grade", grade: min_grade)}
end
Run Code Online (Sandbox Code Playgroud)

但是,我在两个地方都复制了where子句。

是否有任何从子模型调用父范围的方法?

ruby ruby-on-rails rails-activerecord ruby-on-rails-5

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

约束布局 - 宽度最大的两个视图

我想创建一个布局(使用约束布局),如下所示:

在此处输入图片说明

在不同的语言中,Button1 可能比 button2 大。我怎样才能做到这一点?

我只能在包含两个按钮的约束中使用 LinearLayout 来实现这一点,但我试图只使用一个布局。

谢谢

android android-layout android-constraintlayout

4
推荐指数
2
解决办法
1581
查看次数

骨干和历史推动状态

使用骨干,是否可以在历史记录中存储一些数据,以便在调用后退时可以重新获取?

在无骨干应用程序中,我的应用程序将类似于以下内容.执行操作时:

//When doing some action
history.pushState(mycurrentData, title, href)
Run Code Online (Sandbox Code Playgroud)

以及以下情况,以便在返回时恢复当前数据:

function popState(event) {  
    if (event.state) { 
        state = event.state;
        //get my data from state
    }
}
window.onpopstate = popState;
Run Code Online (Sandbox Code Playgroud)

我需要在我的骨干应用程序上应用相同的行为.

谢谢

javascript browser-history backbone.js backbone-routing

3
推荐指数
1
解决办法
4248
查看次数

在骨干应用程序中的搜索引擎优化,以便谷歌可以索引回家后,phantomjs

我有Backbone网站.我使用了phantomjs,以便搜索引擎可以在_escaped_fragment_spec之后查找js链接(#!/ something).我已经使用谷歌webtools检查,看看谷歌将如何看待我的网站,并且大多数一切似乎都是正确的.

但是,主页面(例如:www.example.com;链接中没有#!的那个),谷歌没有发送_escaped_fragment_spec,所以页面没有发送到phantomjs,并且没有应用js,因此google是期待几乎空白的页面.

有谁知道如何表明这一点,或解决问题?

谢谢

编辑:根据谷歌(https://developers.google.com/webmasters/ajax-crawling/docs/getting-started)你应该添加到头,但我添加了它,和webtools - 看作谷歌,不缝作为javascript处理主页面.有帮助吗?有问题的网站是http://www.boletus-app.com/ 谢谢

javascript seo backbone.js phantomjs

3
推荐指数
1
解决办法
1661
查看次数