2017-03-09 4 views
1

Googleマップアンドロイドアプリでは、2本の指で地図を回転させることができます。これは私が遭遇したほとんどの携帯電話で動作します。しかしそれはではないサムスン銀河J3(ローエンド電話、磁力計なし)。MapFragmentジェスチャーは動作していません - プログラムで決定する方法

私は磁力計がなければ、地図サービスの思考回転の作者は役に立たないと思います(私は同意しません)。だから私の質問は次のとおりです。

  1. これは設計上の問題ではないと思われますか?この「機能」の確認はありますか?
  2. これをオーバーライドして回転を有効にする方法はありますか?
  3. もしそうでなければ、回転ジェスチャーが機能するかどうかをJavaコード(私はMapFragmentを使用)から判断する方法はありますか?

私は回転装置(水平/垂直)を話しているわけではありませんが、2本の指はジェスチャーを回転します。

また、私は約

map.getUiSettings().setRotateGesturesEnabled(true)`. 

それが値を返さないと例外をスローしないし、まだジェスチャーが動作していない回転を知っていますか。

+0

はちょうど私がこのデバイスにあまりにもこの問題を発見した言いたかったです。ときどき奇妙な方法で回転します。私は何かが間違ってライブラリやデバイスに間違っていると思う。 Google独自のGoogleマップアプリも動作しないため、魔法の回避策がない限り、コードで修正できるものではないと思います。 – Nublodeveloper

+0

あなたはそれがGoogleのアプリでも発生するのは間違いありませんが、これはエラーではなく(悪い)設計であると思います。デザインを修正できないので、回転がうまくいかないかどうかを知る方法があればいいので、軽減することができます。 – MateuszL

+0

私はちょうどそれを偶然に回転させました。同じ方向に2本の指を横に使って回転させることができます。一方の指は他方の指の上にある。 3Dビューに変更するときのように、上下左右の代わりに左右に左右に移動します。地獄のように奇妙。 – Nublodeveloper

答えて

0

はこれを試してみてください:

SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.maps_fragment); 
    GoogleMap map = mapFragment.getMap(); 
    map.getUiSettings().setRotateGesturesEnabled(true); 
+0

私はすでにこのコードを持っています。 "それは価値を返さず、例外もスローしませんが、回転ジェスチャーは機能しません。" – MateuszL

関連する問題