Autore Topic: Due activity di cui la seconda è un esempio di Android Studio  (Letto 544 volte)

Offline jumpy83

  • Nuovo arrivato
  • *
  • Post: 18
  • Respect: 0
    • Mostra profilo
Due activity di cui la seconda è un esempio di Android Studio
« il: 10 Giugno 2015, 23:54:55 CEST »
0
Buonasera a tutti, spero di non aver sbagliato sezione.

Premetto che sono newbie!
Ho trovato SlidingTabsBasic tra gli esempi di Android Studio, e "sfruttando" questo esempio vorrei creare questa situazione:

1. Apro la app e mi spunta immagine di sfondo con bottone "entra".
2. Clicco sul bottone e mi rimanda al codice dell'esempio sopra citato.

Ho creato un nuovo progetto, creato nell'activity_main.xml il bottone e inserita l'immagine di sfondo e nel MainActivity.java ho creato l'evento del click del bottone.
Codice (XML): [Seleziona]
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
   android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
   android:paddingRight="@dimen/activity_horizontal_margin"
   android:paddingTop="@dimen/activity_vertical_margin"
   android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".Home"
   android:background="@drawable/immagine1">

    <Button
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:id="@+id/entra"
       android:text="Entra"/>

</RelativeLayout>

Codice (Java): [Seleziona]
public class Home extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_home);
        Button entra=(Button)findViewById(R.id.entra);
        entra.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent infoparco =new Intent(getApplicationContext(),Infoparco.class);
                startActivity(infoparco);
            }
        });
    }


Dopo di che ho creato una blank activity chiamata Infoparco in cui ho incollato tutto il codice che c'era nella MainActivity dell'esempio di Android Studio, cambiando l'indirizzo del package in alto. Successivamente ho creato, copiandole interamente, le varie classi e i vari file xml che mi venivano segnalati in rosso.
Provo a far partire la simulazione della app e mi spunta la pagina iniziale. Clicco sul bottone ma crasha e mi segnala questi errori:

Codice: [Seleziona]
06-10 17:48:04.773  28278-28278/it.fontanagianpaolo.www.provaE/AndroidRuntime﹕ FATAL EXCEPTION: main
    Process: it.fontanagianpaolo.www.prova, PID: 28278
    java.lang.RuntimeException: Unable to start activity ComponentInfo{it.fontanagianpaolo.www.prova/it.fontanagianpaolo.www.prova.Infoparco}: android.view.InflateException: Binary XML file line #7: Error inflating class it.fontanagianpaolo.www.view.SlidingTabLayout
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2195)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
            at android.app.ActivityThread.access$800(ActivityThread.java:135)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
            at android.os.Handler.dispatchMessage(Handler.java:102)
            at android.os.Looper.loop(Looper.java:136)
            at android.app.ActivityThread.main(ActivityThread.java:5017)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:515)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
            at dalvik.system.NativeStart.main(Native Method)
     Caused by: android.view.InflateException: Binary XML file line #7: Error inflating class it.fontanagianpaolo.www.view.SlidingTabLayout
            at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:707)
            at android.view.LayoutInflater.rInflate(LayoutInflater.java:755)
            at android.view.LayoutInflater.inflate(LayoutInflater.java:492)
            at android.view.LayoutInflater.inflate(LayoutInflater.java:397)
            at it.fontanagianpaolo.www.prova.slidingtabsbasic.SlidingTabsBasicFragment.onCreateView(SlidingTabsBasicFragment.java:32)
            at android.support.v4.app.Fragment.performCreateView(Fragment.java:1789)
            at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:955)
            at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1138)
            at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:740)
            at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1501)
            at android.support.v4.app.FragmentActivity.onStart(FragmentActivity.java:551)
            at it.fontanagianpaolo.www.prova.activity.SampleActivityBase.onStart(SampleActivityBase.java:21)
            at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1171)
            at android.app.Activity.performStart(Activity.java:5241)
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2168)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
            at android.app.ActivityThread.access$800(ActivityThread.java:135)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
            at android.os.Handler.dispatchMessage(Handler.java:102)
            at android.os.Looper.loop(Looper.java:136)
            at android.app.ActivityThread.main(ActivityThread.java:5017)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:515)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
            at dalvik.system.NativeStart.main(Native Method)
     Caused by: java.lang.ClassNotFoundException: Didn't find class "it.fontanagianpaolo.www.view.SlidingTabLayout" on path: DexPathList[[zip file "/data/app/it.fontanagianpaolo.www.prova-2.apk"],nativeLibraryDirectories=[/data/app-lib/it.fontanagianpaolo.www.prova-2, /system/lib]]
            at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:497)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:457)
            at android.view.LayoutInflater.createView(LayoutInflater.java:559)
            at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:696)
            at android.view.LayoutInflater.rInflate(LayoutInflater.java:755)
            at android.view.LayoutInflater.inflate(LayoutInflater.java:492)
            at android.view.LayoutInflater.inflate(LayoutInflater.java:397)
            at it.fontanagianpaolo.www.prova.slidingtabsbasic.SlidingTabsBasicFragment.onCreateView(SlidingTabsBasicFragment.java:32)
            at android.support.v4.app.Fragment.performCreateView(Fragment.java:1789)
            at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:955)
            at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1138)
            at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:740)
            at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1501)
            at android.support.v4.app.FragmentActivity.onStart(FragmentActivity.java:551)
            at it.fontanagianpaolo.www.prova.activity.SampleActivityBase.onStart(SampleActivityBase.java:21)
            at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1171)
            at android.app.Activity.performStart(Activity.java:5241)
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2168)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
            at android.app.ActivityThread.access$800(ActivityThread.java:135)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
            at android.os.Handler.dispatchMessage(Handler.java:102)
            at android.os.Looper.loop(Looper.java:136)
            at android.app.ActivityThread.main(ActivityThread.java:5017)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:515)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
            at dalvik.system.NativeStart.main(Native Method)

Che dite? Siate clementi! :)

Offline xixietto

Re:Due activity di cui la seconda è un esempio di Android Studio
« Risposta #1 il: 22 Giugno 2015, 02:29:45 CEST »
0
Hai aggiunto le pagine nel  manifest?

Inviato dal mio GT-I9505 utilizzando Tapatalk


Offline tonno16

  • Utente storico
  • *****
  • Post: 1228
  • Respect: +59
    • Mostra profilo
  • Dispositivo Android:
    moto g
  • Play Store ID:
    Diego Tonini
  • Sistema operativo:
    OpenSuse
Re:Due activity di cui la seconda è un esempio di Android Studio
« Risposta #2 il: 22 Giugno 2015, 07:38:34 CEST »
0
Lo sliding tab da quanto So non è incluso in android. È una classe che devi scaricare. Difatti google sul sito fornisce il .java. L'errore difatti dice che non trova tale classe

Offline jumpy83

  • Nuovo arrivato
  • *
  • Post: 18
  • Respect: 0
    • Mostra profilo
Re:Due activity di cui la seconda è un esempio di Android Studio
« Risposta #3 il: 22 Giugno 2015, 17:02:27 CEST »
0
Ragazzi ho risolto. L'errore era molto supido. Praticamente in una classe ho sbagliato il package! Appena l'ho sistemato tutto ha funzionato alla perfezione.
Adesso ho un altro problema che è quello di riuscire a riempire ogni tab con un contenuto differente.
Ma a questo punto mi conviene aprire un'altra discussione.
Grazie per le risposte.

P.s. se su Android Studio cliccate su "Import Sample" c'è l'esempio SlidingTabBasic che è quello che si trova anche su google.