小编Rak*_*esh的帖子

在Android WebView中启用/禁用放大

WebSettings中有一些与缩放相关的方法:

  • WebSettings.setSupportZoom
  • WebSettings.setBuiltInZoomControls

我发现他们在某些设备上的工作方式不同 例如,在我的Galaxy S上,默认情况下启用缩放功能,但在LG P500上它被禁用(现在我不知道如何启用仅捏缩放,但隐藏缩放按钮).

在P500上,当我打电话时,setBuiltInZoomControls(true)我得到这两个变体工作(多点触控和按钮).

如何在LG P500等设备上启用多点触控缩放和禁用缩放按钮?(另外,我知道HTC设备上存在同样的问题)

更新:这里几乎是解决方案的完整代码

if (ev.getAction() == MotionEvent.ACTION_DOWN ||
        ev.getAction() == MotionEvent.ACTION_POINTER_DOWN ||
        ev.getAction() == MotionEvent.ACTION_POINTER_1_DOWN ||
        ev.getAction() == MotionEvent.ACTION_POINTER_2_DOWN ||
        ev.getAction() == MotionEvent.ACTION_POINTER_3_DOWN) {
    if (multiTouchZoom && !buttonsZoom) {
        if (getPointerCount(ev) > 1) {
            getSettings().setBuiltInZoomControls(true);
            getSettings().setSupportZoom(true);
        } else {
            getSettings().setBuiltInZoomControls(false);
            getSettings().setSupportZoom(false);
        }
    }
}

if (!multiTouchZoom && buttonsZoom) {
    if (getPointerCount(ev) > 1) {
        return true;
    }
}
Run Code Online (Sandbox Code Playgroud)

此代码位于我onTouchEvent重写的WebView方法中.

android zoom multi-touch android-webview

64
推荐指数
5
解决办法
12万
查看次数

如何更新 nativescript cli

Nativescript 5 已发布,我正在尝试更新 tns 版本。目前它 tns --version 显示为 4.3.2。

我遵循了https://docs.nativescript.org/releases/upgrade-instructions 中的所有步骤,但它仍然给了我 4.3.2 的版本。

如何升级 nativescript-cli 以便 tns --version 显示最新版本。

nativescript npm-install nativescript-cli

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

com.google.android.gms.ads.AdView 找不到 Android Studio

我一直在研究几天试图弄清楚这一点。与 Google Play 服务有关的任何内容都标为红色。它在 Gradle 中已经是最新版本,我已经得到了网站上说要放在那里的所有部分,但它仍然是红色的。

import android.widget.Button;
import android.widget.Toast;
import com.example.zanziv.rickandmorty.R;
import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.AdView;
import com.google.android.gms.common.ConnectionResult;
import com.google.android.gms.common.GooglePlayServicesUtil;
import java.io.IOException;

 public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);



            AdView mAdView = (AdView)findViewById(R.id.adView);
            AdRequest.Builder adRequestBuilder = new AdRequest.Builder();
            mAdView.loadAd(adRequestBuilder.build());
Run Code Online (Sandbox Code Playgroud)

依赖

dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.android.support:appcompat-v7:23.0.1'
compile 'com.google.android.gms:play-services:7.8.0'
compile 'com.google.android.gms:play-services-ads:7.8.0'
Run Code Online (Sandbox Code Playgroud)

xml

 <com.google.android.gms.ads.AdView
    xmlns:ads="http://schemas.android.com/apk/res-auto"
    android:id="@+id/adView"
    android:layout_width="320dp"
    android:layout_height="50dp"
    ads:adSize="BANNER"
    ads:adUnitId="MINE"
    android:layout_alignParentBottom="true"
    android:layout_centerHorizontal="true">
</com.google.android.gms.ads.AdView>
Run Code Online (Sandbox Code Playgroud)

android admob google-play-services android-studio

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

JavaFX打包:NoClassDefFoundError

我使用maven和OpenJDK 1.8打包了JavaFX应用程序,其中的相关部分来自我的pom.xml:

<plugin>
    <artifactId>maven-assembly-plugin</artifactId>
    <executions>
        <execution>
            <phase>package</phase>
            <goals>
                <goal>single</goal>
            </goals>
        </execution>
    </executions>
    <configuration>
        <archive>
            <manifest>
                <addClasspath>true</addClasspath>
                <mainClass>ui.Main</mainClass>
            </manifest>
        </archive>
        <descriptorRefs>
            <descriptorRef>jar-with-dependencies</descriptorRef>
        </descriptorRefs>
    </configuration>
</plugin>
Run Code Online (Sandbox Code Playgroud)

现在重要的是,这曾经起作用。我知道这一点是因为我在包装最终起作用的地方专门进行了git commit。经过大约一天的时间,并进行了多次这样的构建(我不知道更改了什么),由于以下错误,我无法再启动jar:

$ java -jar target/app.jar
Error: Could not find or load main class ui.Main Caused by:
java.lang.NoClassDefFoundError: javafx/application/Application
Run Code Online (Sandbox Code Playgroud)

当我查看Jar的内容时,可以看到除JavaFX类之外,所有依赖项都被明确包含在内。

我尝试过的

  • javapackager
  • 修补javafx-maven-plugin
  • 明确地将JavaFX作为依赖项添加到我的pom.xml中,希望程序集插件可以为我打包

以上都不成功。我能够启动我的应用程序的唯一方法是直接从IDE,这似乎意味着JavaFX的库的仍然可用我的系统上。

关于如何再次运行它的任何想法?

java javafx maven

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

Spring Batch条件流程不执行else部分

我正在尝试使用 Spring Batch 实现下图所示的流程。我指的是https://docs.spring.io/spring-batch/4.0.x/reference/pdf/spring-batch-reference.pdf第85页的java配置,其中讨论了Java配置。

要求

由于某种原因,当决策者返回 TYPE2 时,批处理以失败状态结束,没有任何错误消息。以下是我的工作的java配置:

jobBuilderFactory.get("myJob")
            .incrementer(new RunIdIncrementer())
            .preventRestart()
            .start(firstStep())
            .next(typeDecider()).on("TYPE1").to(stepType1()).next(lastStep())
            .from(typeDecider()).on("TYPE2").to(stepType2()).next(lastStep())
            .end()
            .build();
Run Code Online (Sandbox Code Playgroud)

我认为 java 配置有些不正确,尽管它与 Spring 文档匹配。流程在这里可能很有用,但我相信没有它也会有办法。关于如何实现这一目标有什么想法吗?

java spring spring-integration spring-batch

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