Cannot make a static reference to the non-static method

Status
Für weitere Antworten geschlossen.
Sicher, dass die id's stimmen? Ich mein es wir halt irgendwas Null sein. Keine Ahnung obs den setText Methoden was ausmacht, ob der Parameter Null ist, oder ob die das intern abfangen.
D.h. du hast vier stellen an denen es fehlen kann. Entweder einer der TextViews ist Null oder die beiden Parameter. Kommentier mal einen TextView aus und setz als Parameter fixe strings keine Variablen.

..oder halt einfach Debuggen, dann kannst auch Variablen watchen usw. was das ganze halt doch um ein vielfaches erleichtert.
 
an den ID's kann es nicht liegen, da eclipse ja sonst meckern würde, dass es die nicht gefunden hat. habe gerade mal im setText() keine variable, sondern "Test" eingetragen. dann ist die app wieder abgeschmiert.
 
Post mal die verwendete Layout XML
 
Code:
<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"
    tools:context=".MainActivity$DummySectionFragment" >

    <WebView
        android:id="@+id/wvVPlan"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true" />

    <TextView
        android:id="@+id/tvError"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true" />

    <TextView
        android:id="@+id/tvWelcomeHead"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentRight="true"
        android:layout_below="@+id/tvError"
        android:paddingLeft="10dp"
        android:paddingRight="10dp"
        android:textAppearance="?android:attr/textAppearanceMedium" />

    <TextView
        android:id="@+id/tvWelcome"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentRight="true"
        android:layout_below="@+id/tvWelcomeHead"
        android:layout_centerHorizontal="true"
        android:paddingLeft="10dp"
        android:paddingRight="10dp" />

</RelativeLayout>

Das ist die XML für die Fragmente.
 
Das Du geschrieben hast, dass Du Dir das Schlüsselwort static von Eclipse vorgeben lässt und mit der Fehlermeldung 'Cannot make a static reference to nonstatic Method' macht mich jetzt etwas betroffen.

Eine Statische Innere Klasse ist eine, die ohne eine Instanz der Äusseren Klasse auskommt. Diese darf dann zwangsläufig nicht auf die 'nichtstatischen Methoden' der umschließenden Klasse zugreifen (da sie ja keine umschließende Instanz hat. Das besagt die Fehlermeldung.

Um sauber in Java implementieren zu können, solltest Du Dich auf jeden Fall erst mal mit dem Thema 'Statische und nicht-Statische Klassenelemente' beschäftigen, sonst wird das schwer...

MfG Uwe
 
Und was schlägst du vor, wie ich nun diesen verdammten Text in die TextViews bekomme? Irgendwie muss das ja machbar sein.
 
So, alle ausgeschlafen und fit. Jetzt jemand ne Idee?
 
Vielleicht sollte der Threadersteller erstmal lesen und das machen, bevor man ausschläft...

u.k-f schrieb:
Um sauber in Java implementieren zu können, solltest Du Dich auf jeden Fall erst mal mit dem Thema 'Statische und nicht-Statische Klassenelemente' beschäftigen, sonst wird das schwer...

MfG Uwe
 
  • Danke
Reaktionen: DagobertDokate
Vielleicht hat man aber keine Zeit sich erst 3 Monate mit sowas zu befassen und vielleicht ist theoretisches Lernen ******?

Aber mal zum eigentlichen Thema. Mir ist gestern Abend was eingefallen. Das Problem waren ja die ollen Fragmente und die Klasse. Habe nun einen Weg gefunden, wie ich es so hinbekomme, wie ich will, oder so ähnlich. Anstatt die Texte mit setText in die Fragmente zu hauen und dann auf 4 Seiten den selben Text zu haben, habe ich ein neues layout angelegt mit den TextViews aus den Fragmenten. Die IF Anweisung habe ich nun in die onCreate der MainActivity gepackt und je nach Ergebnis lade ich ein anderes layout, also entweder layout mit den Fragmenten oder das layout mit den TextViews.

Hätte mir das denn niemand anderes sagen können? Wo sind denn hier die Profis?

Code:
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		
		klassenid = getSharedPreferences(PREFS_NAME, MODE_PRIVATE).getString(PREFS_ID, "0");
		
		if(klassenid == "0"){
			setContentView(R.layout.novplan);
			
			tvWelcomeTitel = (TextView) findViewById(R.id.tvWelcomeHead);
			tvWelcomeText = (TextView) findViewById(R.id.tvWelcome);
			
			String welcomeTitel = getString(R.string.welcome_titel);
			String welcomeText = getString(R.string.welcome_text);
			
			tvWelcomeTitel.setText(welcomeTitel + " ...");
			tvWelcomeText.setText(welcomeText);
			
		}else{
			if(!isNetworkAvailable()){
				setContentView(R.layout.novplan);
				tvError = (TextView) findViewById(R.id.tvError);
				String noInet = getString(R.string.options_noInet);
				tvError.setText(noInet);
			}else{
			
			setContentView(R.layout.activity_main);
			
			// Create the adapter that will return a fragment for each of the three
			// primary sections of the app.
			mSectionsPagerAdapter = new SectionsPagerAdapter(
					getSupportFragmentManager());

			// Set up the ViewPager with the sections adapter.
			mViewPager = (ViewPager) findViewById(R.id.pager);
			mViewPager.setAdapter(mSectionsPagerAdapter);
			mViewPager.setCurrentItem(mViewPager.getCurrentItem() + 1);
			}
			
		}
		
		

	}
 
Vielleicht hat man aber keine Zeit sich erst 3 Monate mit sowas zu befassen und vielleicht ist theoretisches Lernen ******?
Ich hoffe ja mal nicht das du das beruflich machst.
Also solltest du entweder eine Einstellung überarbeiten, oder dir ein anderes Hobby suchen?
Denn wie es aussieht scheinst du keine Begabung und auch kein interesse am Programmiereun zu haben. Und joha Informatik ist Theorielastig, das weiß jeder Student... und Programmieren ist da noch mit das Praktischste :p

Wo sind denn hier die Profis?
Wahrscheinlich gerade am Arbeiten.

und was genau ist jetzt wieder dein Problem?
Du schreibst das du mit Fragmenten nicht klar kommst, und fängst jetzt mit nem ViewPager an? Ich nenne es mal "mutig" :D Der kann ganz schön zicken.

lg. Dagobert
 
Jo, nervt der Kerl.
Das selbe schon in G+ oO
Aber das ist ein anderes Thema. Schade das man hier nicht blocken kann...

Gruß

€dit: Erwartet Hilfe, benimmt sich aber wie der letzte Affe :D
Er schreibt theroie ist scheiße.. WTF? :o Programmierung und auch IT generell ist nun mal 80% Theoretisch *.* Bzw. das lernen nimmt nun mal, wie du es beschreibst, 3 Monate in Ansprich. Das ist meistens so...
 

Anhänge

  • trolling.PNG
    trolling.PNG
    12,1 KB · Aufrufe: 172
Zuletzt bearbeitet:
Kann man doch oder?
Sein Profil angucken, oben gibt es Kontakt ignorieren oder so ähnlich wenn ich mich net irre.

lg.
 
  • Danke
Reaktionen: StefMa
Was bringt es mir, wenn ich mir das alles durchlese? Null! Ich habe HTML, CSS und PHP nicht vom Durchlesen gelernt, sondern vom Anwenden, wenn ich was brauchte, hab ich geguckt, wie das geht und eventuell Hilfe gesucht. Da hatte ich aber auch fachlich kompetente Freunde, die mir sehr gut ausgeholfen haben.

Und ihr solltet bitte nie im Leben Lehrer werden. Wenn in Mathe bei einer Formel bei mir was falsches raus kommt, zeigt mir mein Lehrer auch, wo der Fehler ist und warum und verweist nicht nur ins Mathebuch.

Ob ich Interesse oder Begabung habe könnt ihr nicht wirklich entscheiden. Seid dann aber auch solch Leute die hinter nem Fahrschulauto her fahren und nen Schreianfall kriegen, oder? Jeder fängt klein an, Java und Objektorientiertes Programmieren sind NEU für mich.

@DagobertDokate Könnt ja jetzt auch sagen, dass du einiges lieber lassen sollst. Wenn ich mir das Icon deiner eichhörnchen App, oder was das ist, angucke dann wird mir ganz schlecht. Mag ja sein, dass ich weniger Kenntnisse in Java Programmierung habe als du, aber ich hab definitiv mehr Photoshop Skills und selbst in Gimp ist es leicht einen Menschen/ Tier mit Haaren ordentlich freizustellen.
 
Guten Morgen PhillipOh,

du hast nun schon öfters Threads eröffnet, die sich mit eine bisschen Einarbeitung in das Thema Java und Android, leicht selbst beantworten lassen.
Wenn du kein Freund vom theoretischen lernen bist, soll mir das Recht sein, allerdings darfst du dann nicht erwarten(!), dass man dir sofort hilft, wenn du schon keine Lust hast, die Grundlagen (statische und nicht-statische Klassen) zu erlernen. Zum Programmieren (zur IT) gehört eben auch ein sehr großer Teil Theorie!
Ich habe nichts gegen "learning by doing", allerdings kommt man wie oben geschrieben um manche Grundlagen einfach nicht herum!

Da dein Ton zunehmend rauer wurde und ich nicht möchte, dass ich hier Verwarnungen austeilen muss, schließe ich diesen Thread an dieser Stelle!

Grüße
finnq
 
Status
Für weitere Antworten geschlossen.

Ähnliche Themen

stele
Antworten
4
Aufrufe
1.159
stele
stele
A
Antworten
2
Aufrufe
780
Arti851
A
Horstmann365
Antworten
1
Aufrufe
1.061
jogimuc
J
Zurück
Oben Unten