Ich arbeite momentan an meiner ersten App und komme gerade an einer Stelle nicht weiter.
Und zwar möchte ich ein Handbuch für Berufskraftfahrer erstellen, und würde gerne ein Inhaltsverzeichnis erstellen, wo wenn man z.b auf ein TextView (1.1 Lenk und Ruhezeiten) drück, und man automatisch zu einem Passenden Layout geleitet wird.
Ist das mit einer Methode möglich?
Mal eine grundsätzliche Überlegung: Du willst Text mit Links, also Hypertext. Für Hypertext gibt es bereits eine durchaus etablierte Auszeichnungssprache, die Hypertext Markup Languge, kurz HTML. Folglich wäre die Frage: warum willst Du eine App und baust nicht einfach eine Seite? Die kann auch offline verwendet werden (z. B. via ServiceWorker).
Ansonsten: wenn es nur darum geht, auf den Klick auf eine TextView zu reagieren, kannst Du einen setOnClickListener registrieren. Zusätzlich muss das clickable-Attribut der TextView auf true gesetzt sein.
Mal eine grundsätzliche Überlegung: Du willst Text mit Links, also Hypertext. Für Hypertext gibt es bereits eine durchaus etablierte Auszeichnungssprache, die Hypertext Markup Languge, kurz HTML. Folglich wäre die Frage: warum willst Du eine App und baust nicht einfach eine Seite? Die kann auch offline verwendet werden (z. B. via ServiceWorker).
Ansonsten: wenn es nur darum geht, auf den Klick auf eine TextView zu reagieren, kannst Du einen setOnClickListener registrieren. Zusätzlich muss das clickable-Attribut der TextView auf true gesetzt sein.
mit html kenne ich mich nicht so gut aus, ich bekomme es gerade mal so hin eine Wordpress seite zu erstellen.
Geplant ist zwar eine Homepage, aber erst etwas später. Die Fahrer sollen dieses Handbuch schneller zur Hand haben, und das geht denke ich ganz gut mit einer App. Wegen dem setOnClickListener, die TextView soll nicht nur reagieren sondern mit dann automatisch in dem selben Layout (ScrollView), zu der richtigen Position leiten z.b dem dazugehörigen Image.
Wenn du XML kennst (was du für Android kennen dürftest), hast du die minimal notwendigen HTML-Kenntnisse vermutlich in ein paar Minuten drauf.
Hat bei sowas einige Vorteile gegenüber einer nativen App (Plattform unabhängig, deutlich leichter wartbar,...) und ist, wenn man es passend umsetzt, nicht mehr wirklich von einer nativen App unterscheidbar.
Wenn du XML kennst (was du für Android kennen dürftest), hast du die minimal notwendigen HTML-Kenntnisse vermutlich in ein paar Minuten drauf.
Hat bei sowas einige Vorteile gegenüber einer nativen App (Plattform unabhängig, deutlich leichter wartbar,...) und ist, wenn man es passend umsetzt, nicht mehr wirklich von einer nativen App unterscheidbar.
Und natürlich https://selfhtml.org. Habe da schon Ewigkeiten nicht mehr reingesehen und muss sagen, dass ich die alte Version wesentlich übersichtlicher fand, aber so ist es halt.
Eigentlich brauchst Du nur einen Texteditor, der UTF-8 speichern kann, dann legst Du Dir eine Datei an:
HTML:
<!DOCTYPE html><htmllang="de"><head><metacharset="utf-8"/><metaname="viewport"content="width=device-width, initial-scale=1.0"/><title>Handbuch für Berufskraftfahrer</title><style>body{font-family: sans-serif;font-size: 12pt;}ol.inhaltsverzeichnis li{list-style-type: none;}.spacer{height:100vh;}</style></head><body><h1>Handbuch für Berufskraftfahrer</h1><nav><h2>Inhalt</h2><olclass="inhaltsverzeichnis"><li><ahref="#inhalt1">1. Gesetzliche Regelungen</a><ol><li><ahref="#inhalt1_1">1.1 Lenk- und Ruhezeiten</a></li><li><ahref="#inhalt1_2">1.2 Blabla</a></li></ol></li><li><ahref="#inhalt2">2. Blabla</a><ol><li><ahref="#inhalt2_1">1.1 Blabla usw.</a></li><li><ahref="#inhalt2_2">1.2 Noch mehr Blabla</a></li></ol></li></ol></nav><divclass="spacer"></div><main><h2><aname="inhalt1">1. Gesetzliche Regelungen</a></h2><p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p><divclass="spacer"></div><h3><aname="inhalt1_1">1.1. Lenk- und Ruhezeiten</a></h3><p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p><p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p><divclass="spacer"></div></main></body></html>
Und dann spielst Du einfach mal mit der Datei. Die dort eingefügten "spacer" dienen nur dazu, die Seite künstlich länger werden zu lassen, damit das Scrollen gezeigt werden kann. Natürlich solltest Du den "style" in separate CSS-Dateien auslagern etc. - die Datei dient eben nur als Starter.
Im Prinzip siehst Du recht schnell, was die einzelnen Tags bedeuten zu haben: h1, h2, h3 - Überschrift 1./2./3. Ordnung, ol - steht für "ordered list", li für "list item", p für Paragraph (Absatz). Interessant ist der a-Tag (a dürfte "anchor" stehen), mit dem lassen sich Verknüpfungen auf ein Ziel anzeigen (href-Attribut) als auch Verweis-Ziele im Dokument setzen (name-Attribut). Hinzu kommen nav und main, die der semantischen Gliederung des Dokuments dienen.
Jetzt brauchst Du noch table und img, dann hast Du schon fast alles zusammen.
Und natürlich https://selfhtml.org. Habe da schon Ewigkeiten nicht mehr reingesehen und muss sagen, dass ich die alte Version wesentlich übersichtlicher fand, aber so ist es halt.
Eigentlich brauchst Du nur einen Texteditor, der UTF-8 speichern kann, dann legst Du Dir eine Datei an:
HTML:
<!DOCTYPE html><htmllang="de"><head><metacharset="utf-8"/><metaname="viewport"content="width=device-width, initial-scale=1.0"/><title>Handbuch für Berufskraftfahrer</title><style>body{font-family: sans-serif;font-size: 12pt;}Du bist Spize :) nominiere dich für den Nobelpreis :)
ol.inhaltsverzeichnis li{list-style-type: none;}.spacer{height:100vh;}</style></head><body><h1>Handbuch für Berufskraftfahrer</h1><nav><h2>Inhalt</h2><olclass="inhaltsverzeichnis"><li><ahref="#inhalt1">1. Gesetzliche Regelungen</a><ol><li><ahref="#inhalt1_1">1.1 Lenk- und Ruhezeiten</a></li><li><ahref="#inhalt1_2">1.2 Blabla</a></li></ol></li><li><ahref="#inhalt2">2. Blabla</a><ol><li><ahref="#inhalt2_1">1.1 Blabla usw.</a></li><li><ahref="#inhalt2_2">1.2 Noch mehr Blabla</a></li></ol></li></ol></nav><divclass="spacer"></div><main><h2><aname="inhalt1">1. Gesetzliche Regelungen</a></h2><p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p><divclass="spacer"></div><h3><aname="inhalt1_1">1.1. Lenk- und Ruhezeiten</a></h3><p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p><p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p><divclass="spacer"></div></main></body></html>
Und dann spielst Du einfach mal mit der Datei. Die dort eingefügten "spacer" dienen nur dazu, die Seite künstlich länger werden zu lassen, damit das Scrollen gezeigt werden kann. Natürlich solltest Du den "style" in separate CSS-Dateien auslagern etc. - die Datei dient eben nur als Starter.
Im Prinzip siehst Du recht schnell, was die einzelnen Tags bedeuten zu haben: h1, h2, h3 - Überschrift 1./2./3. Ordnung, ol - steht für "ordered list", li für "list item", p für Paragraph (Absatz). Interessant ist der a-Tag (a dürfte "anchor" stehen), mit dem lassen sich Verknüpfungen auf ein Ziel anzeigen (href-Attribut) als auch Verweis-Ziele im Dokument setzen (name-Attribut). Hinzu kommen nav und main, die der semantischen Gliederung des Dokuments dienen.
Jetzt brauchst Du noch table und img, dann hast Du schon fast alles zusammen.