imageview findviewbyid returns null

S

snake_2012

Neues Mitglied
0
Hallo Zusammen,

ich habe jetzt ein paar stunden gegoogelt, wurde zwar auch fündig, bin aber damit nicht weitergekommen.
Hoffentlich kann mir hier jemand weiterhelfen.

Es geht einfach nur darum, dass ich eine View in meiner Klasse initialisieren möchte und dabei "findViewById(R.drawable.on_off);" verwende.
Das Problem, ich bekomme immer ein NULL als Returnwert.
Code:
 public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        tcpCon = new TcpCon();
        
        img_on_off = (ImageView) findViewById(R.drawable.on_off);
        img_on_off_highlitghed = (ImageView) findViewById(R.drawable.on_off_highlighted);
        
    }

Ich habe auch schon versucht das R file neu zu kompilieren, es mit einem neuen Projekt versucht, es funktioniert aber trotzdem nicht.

Vielen Dank im voraus!

Grüße,
sanke_2012
 
R.drawable.on_off verweist auf ein Drawable - nicht auf eine id einer ImageView

es müsste etwas mit R.id.xxx sein
 
Code:
public final class R {
    public static final class attr {
    }
    public static final class drawable {
        public static final int ic_launcher=0x7f020000;
        public static final int on_off=0x7f020001;
        public static final int on_off_highlighted=0x7f020002;
    }
    public static final class id {
        public static final int imageView1=0x7f050001;
        public static final int relativeLayout1=0x7f050000;
    }
    public static final class layout {
        public static final int main=0x7f030000;
    }
    public static final class string {
        public static final int app_name=0x7f040001;
        public static final int hello=0x7f040000;
    }
}

Das ist mein R file und so wie du es beschrieben hast funktioniert es leider auch nicht.
Ich habe es schon mal so ähnlich in einem anderen Projekt gemacht und habe es auch rauskopiert um es hier zu verwenden, umso mehr ist die Verwunderung, weshalb es nicht funktioniert.
 
Wenn du imageView finden willst musst du nach R.id.imageView suchen.
Es heißt ja auch findViewById und nicht findViewByDrawable oder findViewByLayout.
 
Die einzigen IDs, auf die findViewById etwas liefern kann sind ganz offensichtlich R.id.imageView1 und R.id.relativeLayout1.
 
Danke für die Hilfe, jetzt ist es klar geworden.

LG
 
Zuletzt bearbeitet:

Ähnliche Themen

L
  • LHomme
Antworten
1
Aufrufe
1.162
jogimuc
J
F
  • Fabicoe
Antworten
1
Aufrufe
917
jogimuc
J
O
Antworten
0
Aufrufe
814
Optimist
O
Zurück
Oben Unten