Text View erzeugt rendering Problem

H

Hackfleischhirn

Neues Mitglied
0
Da ich neu bin stelle ich mich erst mal vor.

Ich bin 19 Jahre alt und studiere im ersten Semester Elektrotechnik. Ich habe festgestellt, dass ich viel Spaß an der Informatik habe und möchte mich - als keinen Freizeitausgleich - der Programmierung von Apps annehmen.
Also habe ich mir ein Buch bestellt "Spieleprogrammierung mit Android Studio" und gleich mal losgelegt. Da ich schon ein bisschen mit Java gearbeitet habe lief es auch ganz gut.

Nun habe ich ein Layout erstellt mit mehreren Text Views und bekomme pro Text View drei Render Fehler beim Rendering angezeigt und außerdem die Fehlermeldung:
-> "Missing styles. Is the correct theme chosen for this layout?" bzw.
-> "Failed to find '?attr/textEditSuggestionItemLayout' in current theme"

Ich habe im "AndroidManifest.xml" in der Zeile "android:theme" auf ein Costum Theme verwiesen was ich in der "styles.xml" als "parent="android:style/Theme.NoTitleBar.Fullscreen"" definiert habe. Das Buch ist leider relativ mager was Hilfe angeht....

Falls ihr Code sehen wollt, bitte sagen was. Ich will ja nicht unnötig viel in den Thread werfen.

Ach so. Und schon mal danke für eure Hilfe :)
 
Moin Tartar :)

Was ist das denn für ein Nick - wie kommste denn darauf :) ^^

Ja , zeig mal code und xml bitte :)
 
Danke für deine Hilfe :)

Code:
//AndroidManifest
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="kcd.spas.de.kissthefrog">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

Code:
//activity_main
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="kcd.spas.de.kissthefrog.MainActivity">

    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:id="@+id/container">

    </FrameLayout>

    <TextView
        android:text="0000"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/countdown"
        android:textColor="@android:color/holo_red_dark"
        android:gravity="bottom|center"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true" />

    <TextView
        android:text="00000"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/points"
        android:gravity="top|left"
        android:textColor="@android:color/holo_red_dark" />

    <TextView
        android:text="0"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true"
        android:id="@+id/rounds"
        android:gravity="top|right"
        android:textColor="@android:color/holo_red_dark" />

</RelativeLayout>
 
Ok, das ist jetzt die Manifest und dann die XML - aber der Code fehlt :)

Gib erst mal nix auf die Fehlermeldungen im LayoutDrawer.

Wir konzentrieren uns auf den Code und was für ein Error , WO UND WANN kommt

P.S
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="kcd.spas.de.kissthefrog.MainActivity

DAS hat da gar nix zu suchen - raus damit

Was wolltest du damit bezwecken ??
 
Zuletzt bearbeitet:
Naja. Was meinst du mit Code XD Ich kann dir noch die MainAktivity anbieten. Da steht aber noch nichts neues drin, als das was geladen wird, wenn man ein neues Projekt erstellt. Aber ok... Wenn du nach der Abendlektüre fragst kein Ding ;P

Code:
//Main Activity.java
package kcd.spas.de.kissthefrog

import android.app.Activity;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
}
//styles.xml
<resources>

    <!-- Base application theme. -->
    <style name="AppTheme" parent="android:style/Theme.NoTitleBar.Fullscreen">
        <!-- Customize your theme here. -->
        <item name="android:textSize" >@dimen/text_size</item>
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
    </style>

</resources>
//dimens.xml
<resources>
    <!-- Default screen margins, per the Android Design guidelines. -->
    <dimen name="text_size">32sp</dimen>
    <dimen name="activity_horizontal_margin">16dp</dimen>
    <dimen name="activity_vertical_margin">16dp</dimen>
</resources>
 
Naja. Was meinst du mit Code XD Ich kann dir noch die MainAktivity anbieten.

Na ich will erst mal sicher gehen , dass du keinen Mist im Code baust

ALso nochmal die Frage , was möchtest du mit den ANgaben im RelativeLayout-Container bezwecken ??
 
Keine Ahnung. Ich bau mir den Code hier in Form einer Schnitzeljagd auf, weil ich nach besagtem Buch versuche das Programmieren von Apps zu lernen. Alles was ich dir geschrieben habe steht auch in dem Buch...

Bzw. ist von dir genannte Passage schon von Anfang an geschrieben gewesen. Also von Android Studio. Muss ich am Anfang etwa alles platt machen? Das sollte doch schon einen Sinn haben was die Programmierumgebung da rein schreibt. Sonst kann man sich das ja auch sparen...
 
Nööö, mach mal bitte ein reset - so wird das nix :)

Erklärung :
An den "Styles" solltest du erst mal als Anfänger nix ändern , das ist Pupes - die sind schon ganz gut
vorgefertigt. - so was macht man , wenn man schon mal ein wenig fit ist

Mach dir ein einfaches Layout , ziehe deine elemente da rein und gut iss.

Positionierung , Farbe , Eigenschaften machst du als "Anfänger nicht in der XML , sondern brav über
die Drag & Drop Oberfläche .
Mit der Zeit kommste eh dahinter , wie alles funktioniert und brichst dir jetzt keinen Wolf ab

Und vor allem : du kommst mal weiter
 
Ok. So eine Antwort wollte ich haben :)

Ähhm. Was genau muss denn alles weg? Bevor ich mir jetzt meinen, wenn auch geringen, Fortschritt komplett zerschieße?
 
ALLES - wir fangen neu an :)

Also ich kenne ja nicht den Artikel , worauf das Buch hinaus will, es will auf alle fälle
ein frameLayout und drei TextViews.

a) activity_main.xml löschen
b) neues Layout mit activity_main erstellen - basis : RelativeLayout
c) deine vier elemente reinziehen ( erst mal egal wo), id's vergeben (points/rounds etc)

und "Run" drücken

Und voila - keine Fehler mehr

Aber erst mal eine App die SInnfrei ist :)

d) wieder melden
 
Ok. Ich hab versucht das bestehende Projekt zu modifizieren => hat nicht geklappt.
Neues Projekt begonnen und die xml gekickt.

Frage zu b) Meinst du mit basis RelativeLayout, dass das bei Root elements eingestellt wird wenn man eine neue xml erstellt? Falls ja dann kann ich gar nix mehr rein ziehen....

PS: Ich will dir nicht deinen Abend/Nacht klauen. Hast du vielleicht ein Video an der Hand?
____________________________________________________________________________________

Edit: Ok klappt. Ich kann nicht lesen....

Danke für deine ausführliche Hilfe. Ich mach Schluss für heute. Bekommst einen Keks :)

Edit2: Ich habe herausgefunden warum er Renderfehler erzeugt. Es liegt daran, dass ich den Style auf
"android:style/Theme.NoTitleBar.Fullscreen" geändert hatte.
 
Zuletzt bearbeitet:
Morgen der nächste Keks :)
Gute Nacht
 
Einwurf:
@Hackfleischhirn, das Buch ist schon 2,5 Jahre alt (benutzt den Stand vor 3 Jahre). Stammt also aus grauer Vorzeit. ;)

Erstelle einfach ein Standartlayout mit Android Studio (ohne irgendwelche Fragment) und passe es dann vorsichtig an.

----
Nachtrag:
Wenn du die neue Auflage (von 2016) ist es nicht ganz so schlimm.
Trotzdem noch ein Kommentar zu Programmierbüchern. Du solltest nicht nur ein Buch nehmen, sondern immer mehrere. Jeder Entwickler hat seinen eigenen Stil, und der Stil des Autors muss nicht unbedingt passen. Daneben sparen die meisten Autoren die komplizierteren Themen gerne aus, teilweise aus Platzprobleme, aber auch um unangenehmes zu umgehen. So fehlt in den meisten Android Fachbüchern eine ausführliche Behandlung von Fragmenten. ;) Der beste Weg ist immer auch in die Originaldokumentation von Android zu schauen. Es ist die mit Abstand aktuellste Doku zu dem Thema Android.
 
Zuletzt bearbeitet:
Erstelle einfach ein Standartlayout mit Android Studio (ohne irgendwelche Fragment) und passe es dann vorsichtig an.

Das Fragment hatte mich auch stutzig gemacht.
Ich weis aber auch nicht was das Buch möchte ....
 
Ein Spiel für Android programmieren. ;)
 
Yeah ! :)
 
Hackfleischhirn schrieb:
Keine Ahnung. Ich bau mir den Code hier in Form einer Schnitzeljagd auf, weil ich nach besagtem Buch versuche das Programmieren von Apps zu lernen. Alles was ich dir geschrieben habe steht auch in dem Buch...

Bzw. ist von dir genannte Passage schon von Anfang an geschrieben gewesen. Also von Android Studio. Muss ich am Anfang etwa alles platt machen? Das sollte doch schon einen Sinn haben was die Programmierumgebung da rein schreibt. Sonst kann man sich das ja auch sparen...

@Hackfleischhirn

Zum erlernen von Android Programmierung kann ich dir die APP AIDE empfehlen, das ist ein Schulungstool zum das die ersten Schritte ganz deutlich erklärt. Jedoch solltest du dafür ein Tablet verwenden.


Grüße
 
@markus.tullius

Leider hab ich nicht daran gedacht auf sowas wie ein Veröffentungsdatum zu achten....

@swa00

Das Buch möchte mir im ersten Kapitel das Erzeugen eines Layouts anhand von "kissthefrog" (soll wohl ein clon von dem ameisen-zerdrückspiel darstellen) beibringen.

@Nonsens

Danke. Ich werde mir das mal genauer anschauen. An tablets hab ich hier aber nur ein Surface rumliegen.
 
na dann mach mal weiter , layout steht ja jetzt - auch wenns erst mal bescheiden aussieht ......
 

Ähnliche Themen

W
  • WuDiDong
Antworten
3
Aufrufe
750
jogimuc
J
H
Antworten
4
Aufrufe
594
HTCUserRay
H
H
Antworten
2
Aufrufe
1.263
Hcman
H
Zurück
Oben Unten