1. Nimm jetzt an unserem Geotel Note - Gewinnspiel teil - Informationen zum Note findest Du hier!
  1. BFK, 25.10.2011 #1
    BFK

    BFK Threadstarter Erfahrener Benutzer

    Hallo forum,
    Ich wollte mir ein eigenen View zusamenstellen, aber leider stehe ich vor einem seltsamen Problem.
    Erstmal mein Code von meiner abgeleitete-View Klasse..:
    Code:
    public class View_1 extends View {
    
        
        private static String name_1;
        private static String name_2;
        private static String name_3;
         
        /*+++++++++++ CONSTRUCTORS +++++++++++++ */
    public_1(Context context, AttributeSet attrs) {
            super(context, attrs);
        }
    
        public View_1(Context context) {
            super(context);
        }
        /* ---------------- */
    
    public void setName_1(String NAME){
            name_1 = NAME;
        }
        
    public void setName_2(String NAME){
            name_2 = trackNAME;
        }
    
    public void setName_3(String NAME){
            name_2 = trackNAME;
        }
    
    @Override
        protected void onDraw(Canvas canvas) {
            
            Paint paint_trackName = new Paint();
            paint_trackName.setColor(Color.BLACK);
            paint_trackName.setTextSize(22);
            paint_trackName.setStyle(Style.FILL);
            paint_trackName.setAntiAlias(true);
            canvas.drawText(name_1,20, 25, paint_trackName);
            
            .
            .
            .
            
            Paint line_paint = new Paint();
            line_paint.setColor(Color.BLACK);
            canvas.drawLine(0, getHeight() - 1, getWidth(), getHeight() - 1, line_paint);        
            
            setBackgroundColor(Color.argb(255, 255, 165, 0));
            super.onDraw(canvas);        
        }
    
    }
    
    Also, wir Ihr seht mein View beinhaltet einfach nur Text, der angezeigt wird.

    In meiner Activity erstelle ich ein Objekt meines Views, also ein Objekt von View_1 und adde es in meinem LinearLayout namens "jo"...:
    Code:
    LinearLayout lL = (LinearLayout) findViewById(R.id.jo);
            LayoutParams lp = new LayoutParams(LayoutParams.FILL_PARENT, 60);
            
            View_1 firstView = new View_1(getApplicationContext());
            firstView.setName_1("Test_1");
            firstView.setName_2("Test_2");
            firstView.setName_3("Test_3");
            firstView.setLayoutParams(lp );
            lL.addView(firstView)
    
    Soweit so gut...!

    Wenn ich jetzt aber ein neues View_1-Objekt erstelle und da eine eigenschaft setze, sagen wir mal setName_1..:
    Code:
    View_1 secView = new View_1(getApplicationContext());
    secView.setName_1("BLABLA");
    
    ...wird einfach der Name vom vorhandenen View_1 geändert auf "BLABLA", obwohl ich ja den Name_1 vom secView gesetzt hab, das ja nicht mal zum LinearLayout geaddet wurde.

    Was mache ich falsch..?
     
  2. the_alien, 25.10.2011 #2
    the_alien

    the_alien Android-Lexikon

    Deine Strings name_1, name_2 und name_3 sind static, das heißt jede Instanz der Klasse greift auf genau diese 3 Variablen zu. Du möchtest das static rausnehmen...
     
    BFK bedankt sich.
  3. BFK, 25.10.2011 #3
    BFK

    BFK Threadstarter Erfahrener Benutzer

    Ohhhh verdammt...!
    So ein billiger Fehler und ich habe mir den Code schon mehrmals angesehen, leider immer wieer übersehen...!

    DANKE dir herzlich..!

    -MFG BFK-
     
  4. AndroidOL, 26.10.2011 #4
    AndroidOL

    AndroidOL Junior Mitglied

    Die meisten Fehler findet man selbst nach mehrmaligem drüber schauen nicht ohne "fremde Augen".

    Aber dafür hat man ja Foren. :)
     
  5. BFK, 26.10.2011 #5
    BFK

    BFK Threadstarter Erfahrener Benutzer

    Da hast du wohl recht..!
     
Die Seite wird geladen...
Ähnliche Themen - Problem beim erstellen Forum Datum
[ERLEDIGT] Problem beim Starten einer neuen Activity Android App Entwicklung 21.03.2017
Verständnisprobleme beim Layout Android App Entwicklung 21.02.2017
Probleme beim Encoding einer Textdatei von Windows Android App Entwicklung 25.01.2017
Problem beim Einbinden von Appcompat Android App Entwicklung 30.10.2016
git-Problem in Android Studio (Windows) Android App Entwicklung Heute um 08:19 Uhr
[OFFEN] WebView Probleme Android App Entwicklung Freitag um 23:26 Uhr
[ERLEDIGT] Problem mit Async Task und auszuführender Aufgabe Android App Entwicklung 02.05.2017
[ERLEDIGT] Probleme mit Wear Modul Android App Entwicklung 01.05.2017
[OFFEN] Probleme mit SearchView in ArrayAdapter Android App Entwicklung 28.04.2017
Probleme mit NFC File Transfer Android App Entwicklung 21.01.2017