2016-07-11 3 views
-1

このエラーを解決するのを手伝ってください。私の活動にエラーがあります

私はすでにこのようなオープンパブリッククラスがあります:私は書かれたいくつかのコードを持っていますが、この活動のマップのセクションの上にこのようなエラーが表示されますウィッヒで

@SuppressWarnings("deprecation") 
public class AddPostActivity extends AppCompatActivity { 

を: "メソッドを解決できませんgetMap(); "

コードは次のとおりです。 `

MapFragment fm = (MapFragment)getFragmentManager() 
    .findFragmentById(R.id.maps_fragment); 
    map = fm.getMap(); 

    map.setMapType(GoogleMap.MAP_TYPE_NORMAL); 
    mUiSettings = map.getUiSettings(); 

    mUiSettings.setCompassEnabled(true); 
    mUiSettings.setMyLocationButtonEnabled(false);` 

私はGetMapリクエストを()を交換しようとしています*。 getMapAsync(); : `

 public class AddPostActivity extends FragmentActivity implements OnMapReadyCallback { 
     @Override 
     protected void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.activity_add_post); 

      MapFragment fm = (MapFragment) getFragmentManager().findFragmentById(R.id.maps_fragment); 
      fm.getMapAsync(this); 
     } 

     public void onMapReady(GoogleMap map) { 
       map.setMapType(GoogleMap.MAP_TYPE_NORMAL); 
       mUiSettings = map.getUiSettings(); 
       mUiSettings.setCompassEnabled(true); 
       mUiSettings.setMyLocationButtonEnabled(false); 
     } 


    } 

しかし

赤い線(第2クラスの)公共表示されますがその後どのように私は私の最初のパブリッククラスでOnMapReadyCallbackのコードを追加しますので、重複した公共のCLASを出現することはできませんエロスを与えない?

XML

<fragment android:id="@+id/maps_fragment" 
android:name="com.google.android.gms.maps.MapFragment" 
android:layout_width="match_parent" 
android:layout_height="match_parent" /> 
+0

xmlファイルにマップを追加しましたか? – Eenvincible

+0

あなたの活動のXMLファイルを投稿 –

+0

あなたはSupportMapFragmentを使うべきですか? – br00

答えて

0

どこに問題ができた見つけることができません。これらの行を試してみましょう。

OnMapReadyCallbackを実装する場合は、onMapReady関数をオーバーライドする必要があります。

public class GetLocationActivity extends AppCompatActivity implements OnMapReadyCallback { 

GoogleMap gMap; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
.... 
... 
. 
gMap = ((MapFragment) getFragmentManager().findFragmentById(
R.id.gmap)).getMap(); 
.. 
.. 

} 

@Override 
public void onMapReady(GoogleMap googleMap) { 
// your logic here 
} 

} 

EDITED:

コードからこれらの行を削除します。 [完全に2番目のクラスを削除する]

次に、最初のクラスでonMapReadyCallbackを実装します。

次に、必要な変数とロジックをファーストクラスにコピーします。

//コードから次の行を削除します。

public class AddPostActivity extends AddPostActivity implements OnMapReadyCallback { 

    private UiSettings mUiSettings; 
    private GoogleMap map; 

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

     MapFragment fm = (MapFragment) getFragmentManager().findFragmentById(R.id.maps_fragment); 
     fm.getMapAsync(this); 
    } 

    @Override 
    public void onMapReady(GoogleMap googleMap) { 

     map.setMapType(GoogleMap.MAP_TYPE_NORMAL); 
     mUiSettings = map.getUiSettings(); 

     mUiSettings.setCompassEnabled(true); 
     mUiSettings.setMyLocationButtonEnabled(false); 
    } 
    } 

代わりに、第1クラス自体に同じロジックを実装してください。クエリについて教えてください

+0

私はgetl​​ocationactivityを持っていません、これを追加できますか? – mastec2

+0

そのコードをご覧ください:https://www.dropbox.com/s/8f8oyet57j0ti7n/sddd.txt?dl=0 – mastec2

+0

secon public classにエラーが表示され、赤い線で表示されます – mastec2

関連する問題