在這裏我想到了繞圈圈。從主要活動(按鈕)啓動mapview
我有一個活動叫做定位;
public class Locate extends Activity {
public static String lat;
public static String lon;
public static String number;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.locate);
final Button buttonMaps = (Button) findViewById(R.id.ButtonMaps);
buttonMaps.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Toast.makeText(getBaseContext(), "Button Pressed", Toast.LENGTH_SHORT).show();
try {
Intent i = new Intent(getBaseContext(), displayMap.class);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(i);
}
catch (ActivityNotFoundException e) {
Toast.makeText(getBaseContext(), "Activity Not Found", Toast.LENGTH_SHORT).show();
}
}});
// Toast.makeText(getBaseContext(), "lat: " + lat + " long: " + lon + " from: " + testname, Toast.LENGTH_LONG).show();
}
如果我做displayMap類成爲一個正常的活動,只是有顯示敬酒消息,確認已加載 - 然後它工作正常。
如果我這樣做,但;
public class displayMap extends MapActivity
{
/** Called when the activity is first created. */
public void onCreate()
{
setContentView(R.layout.displaymap);
Toast.makeText(getBaseContext(), "Display Map", Toast.LENGTH_SHORT).show();
}
@Override
protected boolean isRouteDisplayed() {
// TODO Auto-generated method stub
return false;
}
}
然後,只要我點擊按鈕,我就會收到一個力量。
我在我的清單中有正確的'uses-library'標籤;
<application android:icon="@drawable/icon" android:label="@string/app_name">
<uses-library android:name="com.google.android.maps" />
我不明白它只是強制關閉每次我嘗試並加載它。
如果我讓這個我的onClick處理程序,然後它會啓動一個工作的GoogleMaps /默認的MapView
public void onClick(View v) {
Toast.makeText(getBaseContext(), "Button Pressed", Toast.LENGTH_SHORT).show();
Uri uri=Uri.parse("geo:"+Locate.lat+","+Locate.lon);
StartActivity(new Intent(Intent.ACTION_VIEW, uri));
}
但是那不是我想做的事,我想我自己 - 這樣我可以添加覆蓋等等。但它確實證明權限設置正確,並且lib在那裏。
當應用程序FC是意外的DEX錯誤時,logcat錯誤。
任何人都可以在這裏指出正確的方向嗎?
即便如此做,但它仍然強行關閉。我將在下面添加更多信息。 – Mark 2010-03-07 13:54:33