1. Gewinne jetzt ein UMiDIGI C Note - alle Informationen findest du hier!!
  1. neubs, 07.03.2012 #1
    neubs

    neubs Threadstarter Neuer Benutzer

    Hallo Leute,

    ich bin neu hier, komme eigentlich aus der VB / .Net Richtung. Beschäftige mich nun seit einigen Tagen mit Eclipse, dem Android SDK und Co.

    Nun bin ich dabei für mein erstes App eine grobe Struktur aufzubauen und da scheitert es nun schon an der ersten Klasse.

    Mein Vorhaben: meine App soll einige vom Benutzer einzustellende Werte auf dem Gerät ablegen (SharedPreferences ist bekannt und das Ablegen der Werte klappt auch soweit). Da es sich bei den Werten aber um Grundeinstellungen der App handelt sollten diese in jeder Activitiy zur Verfügung stehen. Also ab in eine Klasse damit. Ich habe herausgefunden das ich der Klasse einen Context übergeben muss/sollte damit aus diesem dann Zugriff auf die einzelnen Android funktionen besteht mit denen ich auch in der Activity arbeiten kann - aber irgendwie klappt das net :crying:.

    Hier mal meine Klasse:
    Code:
    package de.test.zeiterfassung;
    
    import android.content.Context;
    
    public class Verbindung extends Context{
        
        public String Server;
        public int Code;
        public int PIN;
        public int MitarbeiterNr;
        
        public Verbindung(Context ctx){
            Server = ctx.getResources().getString( R.string.stdValServerName);        
        }
    }
    
    Nun habe ich zwar über ctx.getResources() zugriff auf meine Android Funktionen dafür meckert mir Eclipse aber meine Klasse an (public class Verbindung) mit den Worten "Der Typ Verbindung muss die übernommene abstrakte Methode Context.enforcePermission(String, int, int, String) implementieren". Wenn ich nun "Nicht implementierte Methoden hinzufügen" wähle, addet mir Eclipse Seitenweise Code - ist das normal und muss ich das einfach ignorieren oder mach ich hier noch irgendwas falsch.

    Bin für jeden Tip dankbar!

    mfg
    Sebastian
     
  2. Neeldarax, 07.03.2012 #2
    Neeldarax

    Neeldarax Erfahrener Benutzer

    Hi neubs,

    schmeiß doch extends Context raus oder muss deine Klasse Verbindung ein Context sein?
    Wenn ja, wieso übergibst du dann einen Context im Construktor?

    Beides zu verwenden macht irgendwie keinen Sinn.

    Da Context von der Activity gestellt wird, würde ich empfehlen diesen zu nutzen.

    regards
     
    neubs gefällt das.
  3. neubs, 07.03.2012 #3
    neubs

    neubs Threadstarter Neuer Benutzer

    Hey,

    danke - hab den extends Context rausgeschmissen. Manchmal liegt die Lösung so nah ...
    Jetzt kann ich weitermachen und auf neue Probleme stossen ;)

    Danke nochmal

    mfg
    sebastian
     
  4. Sentence, 07.03.2012 #4
    Sentence

    Sentence Erfahrener Benutzer

    Moin,
    solange der Name deiner SharedPreferences in jeder Activity gleich ist, kannst du auch in jeder Activity auf diese zugreifen. Dafür musst du diese nicht in einer Klasse auslagern.

    SharedPreferences settings = getSharedPreferences("MyPrefs", 0);

    Deswegen heißen die SharedPreferences ja auch SharedPreferences, oder verstehe ich dich falsch? :confused2:

    MfG
     
Die Seite wird geladen...
Ähnliche Themen Forum Datum
[ERLEDIGT] APK erstellen Android App Entwicklung 11.06.2017
[OFFEN] Android Icon Pack dynamisch erstellen Android App Entwicklung 05.06.2017
[ERLEDIGT] Eine Klasse um das aufrufen anderer Intents zu regeln Android App Entwicklung 24.05.2017
[Meinung] Spezielle App für Mittelstand erstellen (lassen) Android App Entwicklung 23.05.2017
[ERLEDIGT] Tipps für AsyncTask Klasse Android App Entwicklung 18.05.2017
[ERLEDIGT] App erstellen - Sprites? Android App Entwicklung 23.03.2017
[ERLEDIGT] Popup mit Fragment realisieren oder besser eine andere Klasse nehmen? Android App Entwicklung 22.03.2017
Wie erstelle ich eine Fortbildungs-App für die Schule ? Android App Entwicklung 20.02.2017
Gmail Zugriff auf den Anhang verweigert (Automatisches Hinzufügen) Android App Entwicklung 21.01.2017
User to User Chat App erstellen Android App Entwicklung 30.12.2016
Du betrachtest das Thema "Klasse erstellen mit Zugriff auf Android.Content.Context" im Forum "Android App Entwicklung",