私は明らかにアプリ開発に不慣れですが、基本的に私がやりたいのは、「マップの表示」と呼ばれるボタンがあり、押すとGoogleマップを開くシンプルなアプリを作成することです。
これまでのところ、[マップの表示]ボタンを使用してアプリをコーディングしました。このボタンを押すと、ボタンの下にテキストが返されます。これは次のようになります。
また、Google Developersのチュートリアルを使用して、アプリを開いたときにGoogleマップを表示する別のアプリを作成しました。
2つのアプリを組み合わせようとすると、問題が発生します。開いたときにボタンだけを表示するのではなく、ボタンと地図の両方をホーム画面に次のように表示します。
ボタンが押されても何もしません。
私がやろうとしたのは、ボタンが押されたときにマップをロードするOnClickListenerを使用することですが、それは明らかに機能していません。私はそれが私のactivity_mainクラスと本当に基本的な関係があると思いますが、アプリがロードされたときにマップがすぐに作成されないようにそれを整理するのに助けが必要です。
私のactivity_mainクラスは次のようになります。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<com.google.android.maps.MapView
android:id="@+id/mapView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:apiKey="**My Key**"
android:clickable="true"
android:enabled="true" />
<Button
android:id="@+id/buttonMap"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="View Map" />
</RelativeLayout>
そして、私のMainActivityクラスは次のようになります。
public class MainActivity extends MapActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button buttonMap = (Button) findViewById(R.id.buttonMap);
buttonMap.setOnClickListener(mapListener);
}
private OnClickListener mapListener = new OnClickListener() {
public void onClick(View v) {
MapView mapView = (MapView) findViewById(R.id.mapView);
mapView.setBuiltInZoomControls(true);
}
};
@Override
protected boolean isRouteDisplayed() {
return false;
}
}
どんな助けでもありがたいです、乾杯。