Bilder durch Klick wechseln

  • Guten Abend.


    Problem:


    App Startet: (Bild: Lampe aus)
    Button An wird gedrückt: (Bild: Lampe An)
    Button Blau wird gedrückt: (Bild: Lampe Blau)
    Button Aus wird gedrückt: (Bild: Lampe Aus), nachMöglichkeit automatisch raus aus der Activity.


    Bis jetzt komme ich zum Button A, danach stürzt die App ab.


    @Override
    public void onClick(View v) {



    int var = v.getId();
    if (war == R.id.Button An) {
    textView.setImageResource(R.drawable.Lampe An);


    }
    else if (war == R.id.Button Blau) {
    textView.setImageResource(R.drawable.Lampe Blau);


    }
    else if (war == R.id.Button Aus) {
    textView.setImageResource(R.drawable.Lampe Aus);
    finish();


    }
    }



    Wenn es geht, bitte den Code. Bin noch weit von entfernt, die Dev.Seite für mich richtig zu entziffern.


    LG Beginndruide






    edit:_________________________________________________________________________________________________________________________


    Mitte : ausgabeFenster
    Untern in Reihe: (ImageView als Button) ganzerApfel, einmalApfel, zweimalApfel
    Aufruf Activity: ausgabeFenster - ganzerApfel




    ImageView ganzerApfel, einmalApfel, zweimalApfel, ausgabeFenster;


    ganzerApfel = (ImageView) findViewById (R.id.ganzerApfel);
    einmalApfel = (ImageView) findViewById (R.id.einmalApfel);
    zweimalApfel = (ImageView) findViewById (R.id.zweimalApfel);
    ausgabeFenster = (ImageView) findViewById (R.id.ausgabeFenster);



    ganzerApfel.setOnClicklistener (new View.OnClickListener() {
    @Override
    public void onClick (View v){
    ImageView ganz = (ImageView) findViewById(R.id.ausgabeFenster);
    ganz.setImageResource(R.drawable.ganzerApfel);
    }
    });


    einmalApfel.setOnClicklistener (new View.OnClickListener() {
    @Override
    public void onClick (View v){
    ImageView einmal = (ImageView) findViewById(R.id.ausgabeFenster);
    einmal.setImageResource(R.drawable.einmalApfel);
    }
    });


    zweimalApfel.setOnClicklistener (new View.OnClickListener() {
    @Override
    public void onClick (View v){
    ImageView zweimal = (ImageView) findViewById(R.id.ausgabeFenster);
    zweimal.setImageResource(R.drawable.zweimalApfel);
    }
    });


    ganzerApfel.setOnClicklistener (new View.OnClickListener() {
    @Override
    public void onClick (View v){
    finish();
    }
    });


    funktioniert.

  • Hallo,


    vielen Dank!
    Sowohl als auch. Die App läuft jetzt, habe mich in die Dev.Seite reingelesen und das Ergebnis auch gepostet (siehe edit:).
    Da gibt es aber mehrere Wege, werde paar ausprobieren und die Lösung dann ebenso posten.


    Danke für Hilfe

  • Hallo,


    kurz zu mir:

    • Anfänger, habe mir Android Studio vor zwei Wochen geladen.
    • Programmierkenntnisse: keine.
    • Ziele: mit den Aufgaben wachsen.


    Die letzten Tage schrieb ich eine App zusammen, welche alles gelernte bündeln soll, also mein Erfahrungsbaum praktisch
    (Video: https://www.youtube.com/watch?v=FOH_JCNpH7o&feature=youtu.be). Neben vielen Tutorials baute ich paar einfache nach. Ebenso lese ich mich in die Dev. Bibliothek rein und neben dem Programm "setOnClickListener" ist das Programm „Transition Drawable“ das erste selbstgeschriebene Programm.


    Nun zu den Programmen der Reihe nach:


    Thema „setOnClickListener“ (Es soll nur die Guyman-Seite besprochen werden, für Thomas habe ich eine Wischgeste gedacht.):
    Ich experimentierte erst mit Bitmap, jedoch ohne Ergebnisse.
    - Resources res = getResources();
    - Drawable drawable = res.getDrawable(R.drawable.myimage);
    brache eine Fehlermeldung, dass get.Drawable obsolet sei, da kam ich nicht weiter. Darum machte ich es so:




    ____________________________________________________________________________________________________Programmcode setOnClickListener
    package de.maxmusterman.androidbibliothek;
    import android.content.Intent;
    import android.support.v7.app.AppCompatActivity;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.Button;
    import android.widget.ImageView;


    public class MainActivity_3020 extends AppCompatActivity {
    /**-------------------------------------------------------------------------setOnClickListener - Guyman Anzeigefeld*/
    ImageView guyman_of_3020, guyman_on_3020, guyman_smile_3020, guyman_love_3020,
    guyman_music_3020, display_3020;
    Button btn_3020;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main_3020);
    /**-----------------------------------------------------------------------------------------------------------------------*/
    guyman_love_3020 = (ImageView)findViewById(R.id.guyman_love_3020);
    guyman_music_3020 = (ImageView)findViewById(R.id.guyman_music_3020);
    guyman_smile_3020 = (ImageView)findViewById(R.id.guyman_smile_3020);
    guyman_of_3020 = (ImageView)findViewById(R.id.guyman_of_3020);
    guyman_on_3020 = (ImageView)findViewById(R.id.guyman_on_3020);
    display_3020 = (ImageView)findViewById(R.id.display_3020);
    /**----------------------------------------------------------------------------------------------------Activity-Wechsel*/
    btn_3020 = (Button)findViewById(R.id.btn_3020);
    btn_3020.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
    Intent intent = new Intent(MainActivity_3020.this, MainActivity_3021.class);
    startActivity(intent);
    onStop();
    }
    });
    /**-------------------------------------------------------------------------------------------------------------------Klick*/
    guyman_on_3020.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
    ImageView on = (ImageView)findViewById(R.id.display_3020);
    on.setImageResource(R.drawable.guyman_on);
    }
    });
    guyman_smile_3020.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
    ImageView smile = (ImageView)findViewById(R.id.display_3020);
    smile.setImageResource(R.drawable.guyman_smile);
    }
    });
    guyman_love_3020.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
    ImageView love = (ImageView)findViewById(R.id.display_3020);
    love.setImageResource(R.drawable.guyman_love);
    }
    });
    guyman_music_3020.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
    ImageView music = (ImageView)findViewById(R.id.display_3020);
    music.setImageResource(R.drawable.guyman_music);
    }
    });
    guyman_of_3020.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
    ImageView of = (ImageView)findViewById(R.id.display_3020);
    of.setImageResource(R.drawable.guyman_of);
    }
    });
    }
    }


    ____________________________________________________________________________________________________________Fragen zum Programm



    - ist es so in Ordnung?
    - was ist verbesserungswürdig?
    - wie bekommt man saubere, profisionelle Wechsel zwischen den Activities hin?




    ____________________________________________________________________________________________________Programmcode Transition Drawable


    package de.maxmusterman.androidbibliothek;
    import android.content.Intent;
    import android.graphics.drawable.TransitionDrawable;
    import android.support.v7.app.AppCompatActivity;
    import android.os.Bundle;
    import android.support.v7.widget.Toolbar;
    import android.view.View;
    import android.widget.Button;
    import android.widget.ImageView;


    public class MainActivity_2000 extends AppCompatActivity {
    /** -----------------------------------------------------------------------------------------Transition Drawable*/
    Toolbar toolbar_2000;
    ImageView imageView_2000;
    Button btn_2000;
    /**-------------------------------------------------------------------------------------------------------------------*/
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main_2000);
    /**---------------------------------------------------------------------------------------------------------------*/
    toolbar_2000 = (Toolbar) findViewById(R.id.toolbar_2000);
    Bundle bundle = getIntent().getExtras();
    if (bundle != null) {
    toolbar_2000.setTitle(bundle.getString(""));
    }
    /**--------------------------------------------------------------------------------------------Activity Wechsel*/
    imageView_2000 = (ImageView)findViewById(R.id.imageView_2000);
    btn_2000 = (Button)findViewById(R.id.btn_2000);
    btn_2000.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
    Intent intent = new Intent(MainActivity_2000.this, MainActivity_2001.class);
    startActivity(intent);
    finish();
    }
    });/**--------------------------------------------------------------------------------------------------------Klick*/
    /** Die Feinheit liegt darin:
    * - erstelle eine transitions.xml in dem drawable Ordner
    * - <transition></transition>
    * - erstelle zwei items (dabei gilt, erste zwei werden darin eingebunden)
    * - das Bild an erster Stelle in der transitions.xml ist das Startbild
    *
    * - <ImageView>
    * android:src="@drawable/transitions"
    * </ImageView>
    * */
    imageView_2000.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
    TransitionDrawable drawable = (TransitionDrawable) imageView_2000.getDrawable();
    drawable.startTransition(500);
    }
    });
    imageView_2000.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
    TransitionDrawable drawable = (TransitionDrawable) imageView_2000.getDrawable();
    drawable.reverseTransition(500);
    }
    });
    }
    }



    _______________________________________________________________________________________________________________Fragen zum Programm


    In der Hilfestellung von Transition Drawable habe ich in der Main Activity ein Bild vom Programmcode hinterlegt.
    Das sieht nicht gut aus.


    - wie bekomme ich an dieser Stelle sauber den Programmcode niedergeschrieben, mit Klammerabständen usw.?


    Eventuell noch paar Tips über die Primären Ziele und Literatur am Anfang.




    Vielen Dank für eure Zeit, bin für jeden Ratschlag sehr dankbar.
    LG Beginndroide

  • __________________________________________________________________________________________________________________________16.05.17


    Guten Abend Community,


    komm hier nicht weiter, bitte um ein Gedankenanstoß!
    (sehr kurzes Video zum Thema: http://www.youtube.com/watch?v=9QcROpSWcFs)



    Display: ImageView
    Buttons: 1, 2, 3


    das ImageView soll die Nummer einblenden, welche unten betätigt wird. Wenn die Taste dann losgelasen wird, soll wieder eine 1 da stehen.
    Bis jetzt bekomme ich nur den Wechsel in der Aktiontaste, weiß aber nicht, wie man dies auf das Display überträgt.


    LG Beginndroide


    __________________________________________________________________________________________________________________an alle Beginner


    Hier habe ich jemand gefunden, der die Grundsachen gut erklärt. Auch wenn die Videos aus dem Jahre 2013 sind, kann ich diesen viel abgewinnen.
    Seine Seite: codeconcert.de/index.html


    Falls Maik Aicher hier mitliest, Vielen Dank!

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!