Hi XDeveloper,
du erstellst einfach zwei verschiedene Layout Ordner mit den Bezeichnern "layout-land" und "layout-port" und dort machst du dann das jeweilige Layout rein.
Quelle
mfg Titus
Hi XDeveloper,
du erstellst einfach zwei verschiedene Layout Ordner mit den Bezeichnern "layout-land" und "layout-port" und dort machst du dann das jeweilige Layout rein.
Quelle
mfg Titus
Hi ArtooDetoo,
oh war ich ein bissel zu spät...mmhh wenns mit der AsynTask nicht geht wirst du wohl an einen eigenen Threadimplementierung nicht vorbei kommen.
Idee: was wäre wenn du innerhalb der doInBackground Methode entscheidst welche Action jetzt ausgeführt wird, über switch oder if/else.
Wie soll eigentlich der ganze Spaß ausgelöst werden? Drück der User einen Button und die Daten werden vom Server geladen oder wie hast du dir das vorgestellt?
mfg Titus
Hi
ZitatWenn ich das richtig verstanden habe, muss ich den Code, der herunterlädt, in einen seperaten Thread packen.
Android bietet für sowas ne nette kleine Klasse und zwar AsyncTask
Zitatob der Download evtl. gar nicht geklappt hat?
Falls der Serverzugriff mittels HTTP erfolg könntest du den Statuscode abfragen
ZitatWie stelle ich die Verbindung zum Dialog her
private class SendFilesTask extends AsyncTask<Void, Void, Boolean>
private ProgressDialog dialog;
public SendFilesTask(Activity activity) {
dialog = new ProgressDialog(activity);
}
protected void onPreExecute() {
this.dialog.setTitle("Bitte warten!");
this.dialog.setMessage("Die von Ihnen aufgebene Nachricht wird verschickt!");
this.dialog.show();
}
@Override
protected Boolean doInBackground(Void... tmp){
//mache im Hintergrund
}
@Override
protected void onPostExecute(Boolean result){
if (dialog.isShowing()) {
dialog.dismiss();
}
}
Alles anzeigen
Zitatund wie übertrage ich dann die Daten des Download?
Wie greifst du denn auf den Server zu?
mfg titus
Hi mister34,
vielleicht steh ich gerade ein bissel aufm schlauch aber ich kapier nicht so richtig was du machen willst.
mfg Titus
Hi Xdeveloper,
Activitiy:
public class Test21Activity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
User[] toSort = new User[5];
toSort[0] = new User("A",100);
toSort[1] = new User("B",1);
toSort[2] = new User("T",150);
toSort[3] = new User("C",200);
toSort[4] = new User("Z",1);
System.out.println("Vor dem Sortieren");
for (User u : toSort){
System.out.println("Name: "+u.getName()+", Punkte: "+u.getPoints());
}
Arrays.sort(toSort);
System.out.println("Nach dem Sortieren");
for (User u : toSort){
System.out.println("Name: "+u.getName()+", Punkte: "+u.getPoints());
}
}
}
Alles anzeigen
User:
import java.util.Arrays;
public class User implements Comparable {
private int points = 0;
private String name = "";
public User(String name, int points){
this.name = name;
this.points = points;
}
public int getPoints() {
return points;
}
public void setPoints(int points) {
this.points = points;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public int compareTo(Object vergleichuser) {
User other = (User) vergleichuser;
if (points < other.getPoints())
return -1;
else if (points > other.getPoints()) {
return 1;
}
return 0;
}
}
Alles anzeigen
Ausgabe:
02-20 19:02:39.301: I/System.out(224): Vor dem Sortieren
02-20 19:02:39.321: I/System.out(224): Name: A, Punkte: 100
02-20 19:02:39.332: I/System.out(224): Name: B, Punkte: 1
02-20 19:02:39.332: I/System.out(224): Name: T, Punkte: 150
02-20 19:02:39.332: I/System.out(224): Name: C, Punkte: 200
02-20 19:02:39.332: I/System.out(224): Name: Z, Punkte: 1
02-20 19:02:39.341: I/System.out(224): Nach dem Sortieren
02-20 19:02:39.341: I/System.out(224): Name: B, Punkte: 1
02-20 19:02:39.341: I/System.out(224): Name: Z, Punkte: 1
02-20 19:02:39.341: I/System.out(224): Name: A, Punkte: 100
02-20 19:02:39.341: I/System.out(224): Name: T, Punkte: 150
02-20 19:02:39.341: I/System.out(224): Name: C, Punkte: 200
Alles anzeigen
mfg Titus
Hi XDeveloper,
Zitatjava.lang.InstantiationException: de.pgehler.knueppel.User
mmhh das sieht ganz danach aus als wenn dein Programm keine Instanz von User machen kann.
wie sieht denn der Source jetzt aus nach all den Änderungen aus?
Mfg Titus
Hi Matthias,
vielleicht noch als Ergänzung zu Uwe seinen Post.
ZitatWenn ich Apps entwickle, welche Version sollten sie mindestens erfüllen?
Google bietet eine Übersicht über die Verbreitung der Android Versionen.
ZitatWas muss ich hinsichtlich Kompatibilität sowohl aufwärts als auch abwärts wissen?
Aufwärts ist in der Regel kein Problem also wenn du zum Beispiel etwas unter Android 2.1 entwickelst läuft es auch unter 4.0. Umgedreht sieht die ganze Sache schon anders aus.
Nutzt du aber in der 4.0 Version nur Funktionen die es auch unter 2.1 gibt läuft die Anwendung auch unter Android 2.1.
Desweiteren hat Google sogenannte Support Packages veröffentlicht. Diese ermöglichen zum Beispiel das du Funktionen aus Android 3.0 auch unter 2.1 zu nutzen.
Mfg Titu
Hi sleven2k,
äh? was willst du machen bzw was soll anders?
sollen in der Liste mehr Daten dargestellt werden oder willst du mit den Daten weiter arbeiten die in der Liste sind?
für die Anzeige von Daten aus einer DB solltest du dir das hier vielleicht mal ansehen.
mfg Titus
p.s das hier könnte auch interessant sein
Hi doerkel,
also nach diesem Forum hier liegt es nicht unbedingt an o2.
Falls es ein reines Softwareproblem ist könnte vielleicht eine neue Rom helfen. Bei einem Hardwareproblem wird sich wohl nix machen lassen.
Aber bevor du es mit großen Verlusten verkaust warum holste dir nicht ne eigene SIM für das Flyer?
mfg Titus
Hi schwoinbär,
ZitatWie kann man schnell entscheiden, ob eine Anwendung besser mit der Android API oder mit HTML5 bzw. PhoneGap programmiert werden sollte?
Ich glaube das es bei allgemeinen Anwendungen keine klare Aussage gibt, wie man das entscheiden kann.
Es kommt halt immer darauf an was deine Anwendung machen soll bzw was dein Kunde damit machen möchte.
Und natürlich in welcher Programmiersprache du fit bist. Es macht halt wenig Sinn mit HTML und JS Kundenanwendungen zu bauen wenn man beides mehr schlecht als recht kann.
ZitatIst es zeitaufwändiger, ein einfaches Jump-And-Run Spiel in HTML5 oder mit dem Android SDK zu erstellen?
Wenn du noch nie ein Spiel programmiert hast (egal ob Html oder Java) wird es so oder so Zeitaufwendig unterfangen. Es hängt viel damit zusammen wie gut deine Fähigkeiten sind und sowas kann mann halt nur selbst einschätzen.
mfg Titus
Hi marco.deubel,
schau mal hier nach das löst deinen Fehler aus:
Zitatat com.marcodeubel.berechner.BerechnerActivity.onSaveInstanceState(BerechnerActivity.java:94)
mfg Titus
Hi marco.deubel,
ich vermute mal, dein Fehler liegt hier:
Zitat02-02 19:40:42.036: E/Database(656): Failure 1 (near "tableberechner": syntax error) on 0x11a4e0 when preparing 'create tableberechner(_id integer primary key autoincrementPreis/Litertext not null, Litertext not null, Preistext not null, KMtext not null, Datumtext not null);'.
im Code wäre das hier:
ZitatAlles anzeigenprivate static final String DATABASE_CREATE = "create table" + DATABASE_TABLE + "("
+ KEY_ROWID + " integer primary key autoincrement"
+ KEY_PREISLITER + "text not null, "
+ KEY_LITER + "text not null, "
+ KEY_PREIS + "text not null, "
+ KEY_KM + "text not null, "
+ KEY_DATUM + "text not null);";
wenn du dir den String ausgeben läßt wirst du es sehen.
kann es sein das die Methode open() von BerechnerDbAdapter nicht aufgerufen wird. (finde Sie jedenfalls nicht)
mfg Titus
Hi,
Fehler gefunden - das Bild war zu hoch.
Mfg Titus
Hi,
[Blockierte Grafik: http://dl.dropbox.com/u/10127504/device-2012-01-31-194840.png]
Und zwar geht es um diesem Rot eingerahmten Bereich.
Wie bekommt man diesen Zwischenraum weg?
[Blockierte Grafik: http://dl.dropbox.com/u/10127504/device-2012-01-31-194822.png]
"normale" Ansicht - SlidingDrawer "unausgefahren"
Code der XML:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@color/white">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:src="@drawable/icon" />
<SlidingDrawer
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:content="@+id/content"
android:handle="@+id/handle"
>
<Button
android:id="@+id/handle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerInParent="true"
android:text="AAAAAAA"
android:textSize="20dip"
android:textColor="@color/white"
android:textStyle="bold"
android:background="@drawable/slider2"
/>
<RelativeLayout
android:id="@+id/content"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@color/white"
>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="10dip"
android:background="#404145"
></LinearLayout>
</RelativeLayout>
</SlidingDrawer>
</RelativeLayout>
Alles anzeigen
mfg Titus
hi oldwarrior,
versuch mal ob das hier geht:
getActivity könnte gehen da es auch hier vorkommt
mfg Titus
Hi mindthegap,
ZitatWenn ich es sonstwohin lege und den Pfad anpasse läuft es fein.
wo ist das denn?
Mfg Titus
Hi oldwarrior,
ich vermute deine Vermutung ist richtig.
und zwar
ist eine Methode der Klasse Context.
Die Klasse ListActivity ist eine "Unterklasse" der Klasse Context und erbt damit auch openOrCreateDataBase(). Deshalb funktioniert auch dein Code in der ListActivity.
Die Klasse ListFragment erbt aber nun nicht von Context also dürfte die Methode .openOrCreateDatabase(); nicht gehen.
Wie gesagt es ist nur eine Vermutung, ich kann dir nicht zu 100% sagen das das dein Fehler ist.
mfg Titus
Hi oldwarrior,
was sagt denn die LogCat?
mfg Titus