2013-01-18 12 views
6

Ho appena iniziato a utilizzare MapFragments e posso visualizzare la mappa nella mia attività. Mi basta usare un semplice XML di layout, e funziona come previsto:"MapFragment non può essere risolto in un tipo" anche se sono al livello API 17

enter image description here

Ora, ho bisogno di ottenere il frammento di codice, in modo da poter iniziare a interagire con la mappa. Questo è dove mi imbatto in problemi:

enter image description here

Come si può vedere, la MapFragment (o getFragmentManager) non può essere risolto a un tipo. Sto il targeting Android 4, livello di API 17:

enter image description here

e si può anche vedere che sto riferimento il Googke Gioca biblioteca.

Ecco il Manifesto, solo per chiarezza:

enter image description here

Così, la grande domanda è: perché non posso risolvo MapFragment? Cosa mi manca? =)

Come nota a margine: SupportMapFragment sembra risolvere OK, ma non è quello che voglio.

+1

Il tuo obiettivo di compilazione dovrebbe essere qualcosa come Google APIS 4.2, non solo Android 4.2. Scriverò una risposta più approfondita, ma devo scappare in 2 minuti scusate. Puoi ge Google APIs 4.2 dal gestore SDK. In caso di mancata risposta, posso fornire una risposta più dettagliata. –

+1

@Mikedg: la domanda riguarda Maps V2 e il tuo commento riguarda Maps V1. – CommonsWare

+4

Quando si aggiunge l'istruzione 'import' per' com.google.android.gms.maps.MapFragment', cosa succede? – CommonsWare

risposta

23

Per utilizzare MapFragment, è necessario il progetto di libreria Android collegato all'app (come si era fatto) e la dichiarazione import per com.google.android.gms.maps.MapFragment. Sulla base dei tuoi commenti, l'ultima parte era il problema.

Di solito, Eclipse consiglia di importarlo da solo, quindi non ho mai pensato di farlo manualmente.

Mi sono imbattuto in quel problema in alcune occasioni, dove - rifiuta fermamente di aggiungere un'importazione. Non sono stato in grado di inventare uno scenario riproducibile, e succede raramente che semplicemente scrollo le spalle, aggiungilo manualmente e passi ad altre cose. Sono anche incerto se il problema è con Eclipse o con eventuali estensioni ADT al risolutore di importazione.

Inoltre, sono andato a lungo senza Eclipse nello sviluppo di Android, digitando manualmente le istruzioni import e quindi mi sono abituato.

A proposito, rispondi a molte domande qui su SO, hai tempo per qualcos'altro? ;-)

Sono un dattilografo veloce, per gentile concessione di diversi anni da adolescente che digita su una macchina da scrivere manuale.

(Per voi giovani che leggono questo, una "macchina da scrivere" era fondamentalmente una tastiera collegata direttamente a una stampante, e una "macchina da scrivere manuale" era quella che utilizzava l'azione meccanica di premere i tasti per mettere effettivamente le lettere su la carta, quindi ha funzionato senza elettricità. Inoltre, siete cordialmente invitati a scendere dal mio prato.)

+0

haha, non sono così giovane. Sono perfettamente a conoscenza delle macchine da scrivere, AMIGA 500, Commodore 64, nastri, autoexec.bat, config.sys, "Lost Patrol" etc etc =) – Ted

+0

Ottima risposta, risolto il mio problema :) – acoustic

0

Aggiungere manualmente l'importazione, import com.google.android.gms.maps.MapFragment; Ho affrontato lo stesso problema e ho provato a risolverlo per 3 giorni e la soluzione è così semplice

Problemi correlati