|
You last visited: Today at 18:22
Advertisement
Android Eclipse ADT, unabhängigen string auf jeder seite
Discussion on Android Eclipse ADT, unabhängigen string auf jeder seite within the General Coding forum part of the Coders Den category.
03/22/2014, 00:43
|
#1
|
elite*gold: 120
Join Date: Aug 2009
Posts: 1,764
Received Thanks: 361
|
Android Eclipse ADT, unabhängigen string auf jeder seite
Hey Leute,
wollte mich mal wieder an Android probieren, doch es scheitert schon recht früh..
Ich möchte gerne eine app schreiben die einen source code einer URL in "einzelteile" zerlegt und in strings speichert und dann angibt
ich dachte dass der viewpager ein schönes preset dafür wäre und habe es benutzt, mein problem ist jetzt aber folgendes..
Code:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_main_dummy, container, false);
TextView dummyTextView = (TextView) rootView.findViewById(R.id.section_label);
dummyTextView.setText(Integer.toString(getArguments().getInt(ARG_SECTION_NUMBER)));
return rootView;
}
da steht ja quasi drinnen, dass das label auf jeder slide immer nur = seitenzahl ist
wie richte ich es so ein, dass für seite1 text1 und seite2 text2 (bzw der string halt) kommt usw
ich hab zuerst an eine switch gedacht, aber irgendwie kann ich mir das nichteinmal vorstellen!?
Ich danke euch jetzt schon für jede hilfreiche antwort und über anfängerfreundliche und !verständliche! weblinks
@Wenn ich das viewpager preset benutze, kann ich dann noch jede einzelne slide scrollbar machen?
Mit freundlichen Grüßen
€: hab mich grade selber nochmal dran versucht, aber iwie..
Code:
if ((getArguments().getInt(ARG_SECTION_NUMBER) == 0 ) {
dummyTextView.setText(getString(R.string.seite0)[COLOR="red"])[/COLOR]; } else if
((getArguments().getInt(ARG_SECTION_NUMBER) == 1 ) {
dummyTextView.setText(getString(R.string.seite1)[COLOR="red"])[/COLOR]; } else if
((getArguments().getInt(ARG_SECTION_NUMBER) == 2 ) {
dummyTextView.setText(getString(R.string.seite2)[COLOR="Red"])[/COLOR]; }
€2: bin mir wahrscheinlich bewusst, dass 3 mal dummyTextView mit 3 mal verschiedenen strings nicht gehen wird, aber vom grundsatz her..
€4: kann es sein, dass ich im mPageAdapter verschiedene Fragmente angeben muss um das problem zu lösen?
|
|
|
03/22/2014, 01:50
|
#2
|
elite*gold: 110
Join Date: Jun 2013
Posts: 599
Received Thanks: 510
|
Wieso liest du nicht den Error-Log?
Da steht doch das die Klammern fehlen.
Code:
if (getArguments().getInt(ARG_SECTION_NUMBER) == 0 ) {
dummyTextView.setText(getString(R.string.seite0)); } else if
(getArguments().getInt(ARG_SECTION_NUMBER) == 1 ) {
dummyTextView.setText(getString(R.string.seite1)); } else if
(getArguments().getInt(ARG_SECTION_NUMBER) == 2 ) {
dummyTextView.setText(getString(R.string.seite2)); }
Hab die überflüssigen Klammern am Anfang der If-Abfrage entfernt.
|
|
|
03/22/2014, 18:47
|
#3
|
elite*gold: 120
Join Date: Aug 2009
Posts: 1,764
Received Thanks: 361
|
Quote:
Originally Posted by Ten$ion
Wieso liest du nicht den Error-Log?
Da steht doch das die Klammern fehlen.
Code:
if (getArguments().getInt(ARG_SECTION_NUMBER) == 0 ) {
dummyTextView.setText(getString(R.string.seite0)); } else if
(getArguments().getInt(ARG_SECTION_NUMBER) == 1 ) {
dummyTextView.setText(getString(R.string.seite1)); } else if
(getArguments().getInt(ARG_SECTION_NUMBER) == 2 ) {
dummyTextView.setText(getString(R.string.seite2)); }
Hab die überflüssigen Klammern am Anfang der If-Abfrage entfernt.
|
Wow vielen Dank!
ich war nur verwirrt weil in der Fehlermeldung "insert ") Statement"" stand und ich nicht wusste was das "Statement" sollte..
mittlerweile musste ich auf Android Studio umsteigen, weil mein adb server nicht mehr unter Eclipse starten wollte
Dabei bin ich auch gleich auf den Navigation Drawer style umgestiegen und konnte den code erfolgreich anpassen
ich habe jetzt die navigationdrawer einträge aus dem preset übernommen, umbenannt und angepasst und durch deinen korrigierten code funktioniert es jetzt auch richtig
ich habe zunächst gedacht, dass es einfacher wäre 3 fragmente für insgesamt 3 seiten zu erstellen und durch einen druck auf die einträge darauf zu verweisen, aber mit den 5 Zeilen code passt das wohl schon..
jetzt kommt meine nächste frage..
Mein ziel ist es den Quellcode einer internetseite in einem string zu speichern und dann zu unterteilen, um es besser ausgeben zu können
dazu habe ich schon mal einen Thread erstellt,
mir wurde schon eine methode gepostet, aber ich hätte eine frage:
wie würde der text nach der zerlegung aussehen? Wie könnte man ihn ansehnlich darstellen? Werde ich immer noch nur einen string haben, nachdem alles zerlegt wurde?
|
|
|
03/22/2014, 19:00
|
#4
|
elite*gold: 110
Join Date: Jun 2013
Posts: 599
Received Thanks: 510
|
Der Code von XxharCs spaltet den String immer wenn das Zeichen "|" vorkommt und packt diese Abspaltung dann in ein String-Array.
Code:
String str_text = "Hallo|wie|gehts";
String[] str_splittext = text.split("[|]+");
str_splittext hätte dann die Einträge:
Code:
str_splittext[0] = "Hallo";
str_splittext[1] = "wie";
str_splittext[2] = "gehts";
hoffe das du das verstehst. Was ich aber vermute das du einzelne Teile gerne haben möchtest dafür solltest du eine StringBetween-Funktion schreiben.
|
|
|
03/22/2014, 20:06
|
#5
|
elite*gold: 120
Join Date: Aug 2009
Posts: 1,764
Received Thanks: 361
|
Quote:
Originally Posted by Ten$ion
Der Code von XxharCs spaltet den String immer wenn das Zeichen "|" vorkommt und packt diese Abspaltung dann in ein String-Array.
Code:
String str_text = "Hallo|wie|gehts";
String[] str_splittext = text.split("[|]+");
str_splittext hätte dann die Einträge:
Code:
str_splittext[0] = "Hallo";
str_splittext[1] = "wie";
str_splittext[2] = "gehts";
hoffe das du das verstehst. Was ich aber vermute das du einzelne Teile gerne haben möchtest dafür solltest du eine StringBetween-Funktion schreiben.
|
ich glaube die methode würde sich auch super anbieten.
Falls du in den Thread von davor reingesehen hast (was ich stark vermute), dann hast du vielleicht auch gesehen wie der text hätte sortiert werden müssen
Die URLs stehen mir zur verfügung und ihr dürft sie euch so vorstellen:
"
|Dienstag, 4.2.2014|04|LA|5A|M|A213|ES|Statt Mo 6|5|LA|5A|M|A213|FA||
"
USW
gelesen wird das vom java programm wie folgt
aller erster block ist der "titel", bzw in diesem fall der tag
, fange lieber neu an zu zählen, ihr werdet sehen warum
der eigentlich erste block ist die stunde (04)
der zweite die eigentliche Fachkraft (LA)
der dritte die Klasse (5A)
der vierte das Fach (M)
der fünfte der Raum (A213)
der sechste die Vertretung (ES)
und der siebte die Bemerkung (Statt Mo 6)
dann geht es wieder von vorne los nach 7 blöcken
der erste block ist die stunde (05)
der zweite die eigentliche Fachkraft (LA)
der dritte die Klasse (5A)
der vierte das Fach (M)
der fünfte der Raum (A213)
der sechste die Vertretung (FA)
und der siebte die Bemerkung "leer")
und immer so weiter
könnte man jetzt einen counter verwenden und ihm sagen, dass er nach dem ersten, 6ten split eine neue reihe machen soll?
Könnte man die informationen evtl in eine tabelle setzen? wenn ich bei google nach tables suche finde ich nur das tablelayout, aber es will bei mir nicht wirklich funktionieren (also <TableRow/> usw), aber ich glaube ich verwende es einfach falsch
irgendwelche vorschläge für das sinnvolle anzeigen der informationen?
Und wie mache ich mein fragment_main scrollbar? einfach die scrollview in die xml reinschreiben?
Vielen dank für deine antworten!
|
|
|
03/22/2014, 20:37
|
#6
|
elite*gold: 110
Join Date: Jun 2013
Posts: 599
Received Thanks: 510
|
Ja das ist möglich, jeder Block ( "|Dienstag, 4.2.2014|04|LA|5A|M|A213|ES|Statt Mo 6" )
hat ja eine bestimmte Anzahl an Einträgen ( 8 ) und dann lässt du eine Schleife durchlaufen welche die Einträge liest und weiterverarbeitet.
könnte so aussehen ( Tut mir leid wenn es Fehler beinhaltet ich programmiere nicht mit Java ):
Code:
String str_text = "Dienstag, 4.2.2014|04|LA|5A|M|A213|ES|Statt Mo 6|5|LA|5A|M|A213|FA||";
String str_entry = "";
String[] str_splittext = text.split("[|]+");
String[] str_blocks;
int n_entries = 8;
int n_count = str_splittext.lengt / n_entries;
for(int i = 0; i < n_count; i++)
{
for(int j = 0; j < n_entries; j++)
{
str_entry += "-" + str_splittext[(i*n_entries)+j]; //Musst du anpassen.
}
str_blocks.append(str_entry);
str_entry = "";
}
//Ausgeben:
for(int i = 0; i < n_count; i++)
{
System.out.println(str_blocks[i]);
}
//Output:
//-Dienstag, 4.2.2014-04-LA-5A-M-A213-ES-Statt Mo 6
//-5-LA-5A-M-A213-FA-
Das müsstest du nur anpassen. Hoffe das du verstehst was ich meine.
Zu deinem Problem mit dem Table hab ich das gefunden:
Zu der Scrollbar hab ich das hier:
|
|
|
03/23/2014, 01:40
|
#7
|
elite*gold: 120
Join Date: Aug 2009
Posts: 1,764
Received Thanks: 361
|
Quote:
Originally Posted by Ten$ion
Ja das ist möglich, jeder Block ( "|Dienstag, 4.2.2014|04|LA|5A|M|A213|ES|Statt Mo 6" )
hat ja eine bestimmte Anzahl an Einträgen ( 8 ) und dann lässt du eine Schleife durchlaufen welche die Einträge liest und weiterverarbeitet.
könnte so aussehen ( Tut mir leid wenn es Fehler beinhaltet ich programmiere nicht mit Java ):
Code:
String str_text = "Dienstag, 4.2.2014|04|LA|5A|M|A213|ES|Statt Mo 6|5|LA|5A|M|A213|FA||";
String str_entry = "";
String[] str_splittext = text.split("[|]+");
String[] str_blocks;
int n_entries = 8;
int n_count = str_splittext.lengt / n_entries;
for(int i = 0; i < n_count; i++)
{
for(int j = 0; j < n_entries; j++)
{
str_entry += "-" + str_splittext[(i*n_entries)+j]; //Musst du anpassen.
}
str_blocks.append(str_entry);
str_entry = "";
}
//Ausgeben:
for(int i = 0; i < n_count; i++)
{
System.out.println(str_blocks[i]);
}
//Output:
//-Dienstag, 4.2.2014-04-LA-5A-M-A213-ES-Statt Mo 6
//-5-LA-5A-M-A213-FA-
Das müsstest du nur anpassen. Hoffe das du verstehst was ich meine.
Zu deinem Problem mit dem Table hab ich das gefunden:
Zu der Scrollbar hab ich das hier:

|
Okay danke für die Antwort!
ich habe es geschafft mein layout scrollbar zu machen, danke dafür, aber bevor ich jetzt weiter mit dem Design meiner App mache bleibt eine andere sehr wichtige frage offen..
ich schaffe es einfach nicht vernünftig code zu implementieren der es mir erlaubt den source code einer URL abzufangen
immer wenn ich ihn einfüge, kriege ich "unerklärliche fehler" (was evtl daran liegt, dass die fragen und dadurch die verwendeten APIs älter waren)
ist es eine gute idee die quellcode abfrage in die onCreate() methode zu packen?, mir ist bewusst dass sie dann jedes mal ausgeführt wird wenn das layout quasi geladen wird.. andere lösungsvorschläge gerne gesehen!
€: Meine Frage: ich brauch nur einen code der es mir erlaubt einen quellcode in einem string zu speicher, die methode zum trennen hast du oben ja dann schon angegeben.. Ich habe schon wochenlang google danach durchforstet, aber wie gesagt.. nichts hat wirklich funktioniert..
|
|
|
03/23/2014, 02:28
|
#8
|
elite*gold: 110
Join Date: Jun 2013
Posts: 599
Received Thanks: 510
|
Du könntest es beim App-Start machen und einen Refresh-Button hinzufügen ( oder wie bei FaceBook o.ä das man einfach weiter ziehen muss und dann wird es neu geladen ), oder einen Timer welche den Context alle ~5min updated. Deine Methode kann man auch verwenden jedoch würde das glaub ich ziemlich Daten fressen.
Für WebRequests:
|
|
|
03/23/2014, 18:38
|
#9
|
elite*gold: 120
Join Date: Aug 2009
Posts: 1,764
Received Thanks: 361
|
Quote:
Originally Posted by Ten$ion
Du könntest es beim App-Start machen und einen Refresh-Button hinzufügen ( oder wie bei FaceBook o.ä das man einfach weiter ziehen muss und dann wird es neu geladen ), oder einen Timer welche den Context alle ~5min updated. Deine Methode kann man auch verwenden jedoch würde das glaub ich ziemlich Daten fressen.
Für WebRequests:

|
hab jetzt gelesen, dass seit android 4.3 alles in einem gesonderten thread stattfinden muss, aber das verstehe ich jetzt überhaupt nicht mehr..
Ich werde zu diesem zweck einen neuen Thread erstellen, weil die leute hier nicht mehr reingucken werden um mir diese Frage zu beantworten, danke nochmal für alles und kannst mir evtl weiter helfen
|
|
|
 |
Similar Threads
|
Android: Quelltext aus URL auslesen, als String speichern, zerlegen und anzeigen
02/03/2014 - General Coding - 1 Replies
Hja... Um es vorweg zu sagen, benutze die neueste Version von Android Studio, Win7 64Bit, Min API level 4.1, target 4.4, Galaxy s3 zum testen der app
topic regelt..
Dieses rätsel scheint für mich nicht lösbar zu sein.. Ich habe google schon angestrengt und haufenweise Lösungen gefunden, aber leider für ältere APIs die jetzt natürlich nicht mehr funktionieren..
Damit ihr euch das mal kurz vorstellen könnt..
Es geht um eine "Vertretungsplan" App
Unsere schule verfügt, über einen server...
|
Brauche Hilfe bei Eclipse - Android - Anruf Bot
09/24/2013 - General Coding - 5 Replies
Hallo,
Ich Brauche Hilfe bei Eclipse (OSx) ich will das Programm selbst programmieren das letzte mal als Programiert habe ist 4 Jahre her und war c++/vb
Was ich programmieren will ist ein Anrufbot
Er ruft an , legt auf (Timer) , Ruft wieder an (Wiederholung wie oft)
|
Android Project öffnen (Eclipse)
04/16/2013 - General Coding - 1 Replies
Hey Leute,
Ich versuche schon seit 1 Woche (Manch einem mag das ziemlich dumm vorkommen) ein Android Project zu öffnen, aber ich kann in Eclipse keins öffnen.
http://img23.imageshack.us/img23/2258/javanq.png
Ich habe JEDK, ADT Plugin und Android SDK installiert. was muss ich denn auswählen um ein "normales" Android Project zu öffnen?
Wo ich ganz normal mein Quellcode reinschreiben kann?
Wenn ich Android Application Project mache, kommt da ja diese komische Gui wo ich Button ect einfach...
|
string von internet seite auslesen?
09/08/2010 - AutoIt - 9 Replies
hallöle :D
wieder mal eine frage^^
kann man irgendwie einen bestimmte string auf einer internetseite suchen?
möchte in ein script ein schutz einfügen das nur diejenigen auf einen bestimmten teil drauf zugreifenkönnen bei denen der Computername auf der seite steht :D
also
$string = ....String suchen.....
|
[HOW TO] IP von jeder Seite rausfinden
06/07/2009 - Metin2 Private Server - 1 Replies
Hi, um die IP von einer Seite herauszufinden muss man einfach diesen Code in ein textdokument einfügen und es in eine .bat Datei umbenennen:
@echo off
echo Website eingeben:
set /p "url="
ping %url%
echo IP von oben eintragen:
set /P "IP="
start firefox.exe %IP%
|
All times are GMT +1. The time now is 18:22.
|
|