Begründen Sie Text in einer Android-App mit einem WebView, aber mit einer TextView-ähnlichen Oberfläche?

7
___ answer43422977 ___

In nur drei Schritten können Sie Ihren Web-Ansichtstext rechtfertigen.

1)

%Vor%

2)

%Vor%

3)

%Vor%     
___ qstnhdr ___ Begründen Sie Text in einer Android-App mit einem WebView, aber mit einer TextView-ähnlichen Oberfläche? ___ answer11922862 ___

Es ging mir auf die Nerven, ich gebe es zu. Ich mag die WebView so aussehen wie TextView im Code, und selbst wenn ich eine TextView als Mittel zur Erreichung der Text-Align: gerechtfertigte Formatierung verwenden, will ich es nicht so sehen Weg.

Ich habe eine benutzerdefinierte Ansicht (hässlich, wahrscheinlich schlecht) erstellt, die die Methoden implementiert, die ich häufig von %code% verwende, und den Inhalt der WebView ändert, um diese Änderungen widerzuspiegeln. Ob es für jemand anderen oder eine potentielle Gefahr nützlich ist, weiß ich wirklich nicht, für mich funktioniert es, ich habe es in mehreren Projekten verwendet und bin auf keine Probleme gestoßen. Die einzige kleine Unannehmlichkeit ist, dass ich davon ausgehe, dass es eine größere Maut ist, aber keine Sorge, wenn es nur eine oder zwei ist (korrigiere mich, wenn ich falsch liege).

Das Ergebnis ist das Folgende:

Und der Code für das programmatische Einstellen ist so einfach:

%Vor%

Natürlich wäre es dumm, es so zu belassen, also habe ich auch die Methoden hinzugefügt, um die Schriftgröße und die Schriftfarbe zu ändern, für die ich im Grunde nur TextViews verwende. Bedeutung Ich kann so etwas tun:

%Vor%

Und erhalten Sie das folgende Ergebnis (Bilder werden abgeschnitten):

Aber das soll uns nicht zeigen, wie es aussieht, es soll Ihnen zeigen, wie Sie es gemacht haben!

Ich weiß, ich weiß. Hier ist der vollständige Code. Es behandelt auch Probleme beim Einstellen von transparentem Hintergrund und Laden von UTF-8-Strings in die Ansicht. Siehe die Kommentare in reloadData () für Details.

%Vor%     
___ answer34625593 ___

Ich glaube diese einfachste Form. Und ich arbeitete perfekt

%Vor%

xml-Beispiel einfügen

%Vor%     
___ answer12786825 ___

Dies ist die gleiche JustifiedTextView-Klasse, die von Juan (und von mir bearbeitet) angegeben wurde, aber erweitert wurde, um mit benutzerdefinierten XML-Attributen zu arbeiten, die Sie in Ihren XML-Layout-Dateien verwenden können. Selbst der Eclipse-Layout-Editor zeigt Ihre benutzerdefinierten Attribute in der Attributtabelle an, was cool ist. Ich lege das in eine zusätzliche Antwort, für den Fall, dass Sie die Dinge sauber halten wollen und keine XML-Attribute benötigen.

%Vor%

Fügen Sie dies entweder als bossed_text_view_attr.xml in Ihren res / values ​​/ Ordner ein oder fügen Sie es in Ihre vorhandene Datei attrs.xml:

ein %Vor%

Fühlen Sie sich frei zu bearbeiten, wenn Sie irgendwelche Fehler finden.

    
___ answer26066782 ___

Sehen Sie sich diesen Link an. Es verwendet ein WebView, um Ballen zu sein, um den Text einer CheckBox in Android vollständig zu rechtfertigen. Es kann auch genau so in TextView verwendet werden, da jede CheckBox tatsächlich eine TextView und eine Schaltfläche ist. Ссылка

    
___ tag123android ___ Android ist das mobile Betriebssystem von Google, das zum Programmieren oder Entwickeln von digitalen Geräten (Smartphones, Tablets, Automobile, Fernseher, Wear, Glass, IoT) verwendet wird. Verwenden Sie für Themen rund um Android Android-spezifische Tags wie android-intent, nicht intent, android-activity, nicht activity, android-adapter, nicht adapter usw. Bei anderen Fragen als der Entwicklung oder Programmierung, aber im Zusammenhang mit Android Framework, verwenden Sie Der Link: https://android.stackexchange.com. ___ tag123webview ___ Elemente in grafischen Benutzeroberflächen, die HTML-Inhalt hosten. Für Android sehen Sie sich bitte das android-webview-Tag an. Unter iOS finden Sie unter uiwebview oder wkwebview. ___ tag123textview ___ Android-Widget, das dem Benutzer Text anzeigt und es ihm optional ermöglicht, ihn zu bearbeiten. Ein TextView ist ein vollständiger Texteditor, jedoch ist die Basisklasse so konfiguriert, dass keine Bearbeitung möglich ist ___ tag123textalignment ___ Die meisten Textverarbeitungsprogramme bieten die Möglichkeit, die Textausrichtung eines Textblocks zu ändern. Diese Einstellung legt fest, wie der Text horizontal auf der Seite angezeigt wird. Die vier wichtigsten Arten der Textausrichtung sind linksbündig, rechtsbündig, zentriert und ausgerichtet. ___ answer20435394 ___

Ohne Webview-Lösung ist: Ссылка

%Vor%     
___
Juan Cortés 12.08.2012, 14:17
quelle

6 Antworten

19

Es ging mir auf die Nerven, ich gebe es zu. Ich mag die TextViews so aussehen wie TextViews im Code, und selbst wenn ich eine WebView als Mittel zur Erreichung der Text-Align: gerechtfertigte Formatierung verwenden, will ich es nicht so sehen Weg.

Ich habe eine benutzerdefinierte Ansicht (hässlich, wahrscheinlich schlecht) erstellt, die die Methoden implementiert, die ich häufig von TextView verwende, und den Inhalt der WebView ändert, um diese Änderungen widerzuspiegeln. Ob es für jemand anderen oder eine potentielle Gefahr nützlich ist, weiß ich wirklich nicht, für mich funktioniert es, ich habe es in mehreren Projekten verwendet und bin auf keine Probleme gestoßen. Die einzige kleine Unannehmlichkeit ist, dass ich davon ausgehe, dass es eine größere Maut ist, aber keine Sorge, wenn es nur eine oder zwei ist (korrigiere mich, wenn ich falsch liege).

Das Ergebnis ist das Folgende:

Und der Code für das programmatische Einstellen ist so einfach:

%Vor%

Natürlich wäre es dumm, es so zu belassen, also habe ich auch die Methoden hinzugefügt, um die Schriftgröße und die Schriftfarbe zu ändern, für die ich im Grunde nur TextViews verwende. Bedeutung Ich kann so etwas tun:

%Vor%

Und erhalten Sie das folgende Ergebnis (Bilder werden abgeschnitten):

Aber das soll uns nicht zeigen, wie es aussieht, es soll Ihnen zeigen, wie Sie es gemacht haben!

Ich weiß, ich weiß. Hier ist der vollständige Code. Es behandelt auch Probleme beim Einstellen von transparentem Hintergrund und Laden von UTF-8-Strings in die Ansicht. Siehe die Kommentare in reloadData () für Details.

%Vor%     
Juan 08.10.2012, 16:02
quelle
6

Ohne Webview-Lösung ist: Ссылка

%Vor%     
Merter 06.12.2013 23:26
quelle
5

In nur drei Schritten können Sie Ihren Web-Ansichtstext rechtfertigen.

1)

%Vor%

2)

%Vor%

3)

%Vor%     
Srikar Reddy 15.04.2017 06:29
quelle
2

Dies ist die gleiche JustifiedTextView-Klasse, die von Juan (und von mir bearbeitet) angegeben wurde, aber erweitert wurde, um mit benutzerdefinierten XML-Attributen zu arbeiten, die Sie in Ihren XML-Layout-Dateien verwenden können. Selbst der Eclipse-Layout-Editor zeigt Ihre benutzerdefinierten Attribute in der Attributtabelle an, was cool ist. Ich lege das in eine zusätzliche Antwort, für den Fall, dass Sie die Dinge sauber halten wollen und keine XML-Attribute benötigen.

%Vor%

Fügen Sie dies entweder als bossed_text_view_attr.xml in Ihren res / values ​​/ Ordner ein oder fügen Sie es in Ihre vorhandene Datei attrs.xml:

ein %Vor%

Fühlen Sie sich frei zu bearbeiten, wenn Sie irgendwelche Fehler finden.

    
sulai 08.10.2012 17:46
quelle
1

Ich glaube diese einfachste Form. Und ich arbeitete perfekt

%Vor%

xml-Beispiel einfügen

%Vor%     
Ronald 06.01.2016 04:21
quelle
0

Sehen Sie sich diesen Link an. Es verwendet ein WebView, um Ballen zu sein, um den Text einer CheckBox in Android vollständig zu rechtfertigen. Es kann auch genau so in TextView verwendet werden, da jede CheckBox tatsächlich eine TextView und eine Schaltfläche ist. Ссылка

    
Amin Tavassolian 26.09.2014 19:16
quelle