HorizontalScrollView Item hinzufügen

  • 4 Antworten
  • Neuester Beitrag
Diskutiere HorizontalScrollView Item hinzufügen im Android App Entwicklung im Bereich Betriebssysteme & Apps.
C

Crosaider

Fortgeschrittenes Mitglied
Hallo @ all

Ich schreibe gerade an einem App, wo ich Itemes einer HorizontalScrollView dynamisch hinzufügen möchte. Mein Layout von der HorizontalScrollView sieht so aus:

HTML:
<HorizontalScrollView
    android:id="@+id/horizontalScrollView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true"
    android:layout_below="@+id/imageView1"
    android:scrollbars="none" >
    
    <LinearLayout
        android:id="@+id/ScrollViewLayout"
        android:layout_width="fill_parent"
        android:layout_height="match_parent"
        android:gravity="fill_horizontal"
        android:orientation="horizontal">

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:orientation="vertical" >

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:orientation="vertical" >

                <TextView
                    android:id="@+id/TextView02"
                    android:layout_width="105dp"
                    android:layout_height="wrap_content"
                    android:text="@string/note"
                    android:textAppearance="?android:attr/textAppearanceMedium" />

                <TextView
                    android:id="@+id/TextView01"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:text="2"
                    android:textAppearance="?android:attr/textAppearanceMedium" />
            </LinearLayout>
        </LinearLayout>

        <ImageView
            android:id="@+id/imageView2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/trennwand_vertikal" />
    </LinearLayout>
</HorizontalScrollView>
Nun habe ich so versucht ein Item der Liste hinzuzufügen:

Code:
LinearLayout sv = (LinearLayout) findViewById(R.id.ScrollViewLayout);
        
TextView tv = new TextView(this);
tv.setText("Test");
sv.addView(tv);
Bei sv.addView(tv); tritt allerdings ein Fehler auf und das App stürzt ab. Woran kann das liegen? Was habe ich falsch gemacht?

Viele Grüße
Crosaider
 
M

Madlip

Gast
Hättest du vielleicht den Text ausm logcat? Hilft oftmals sehr

Edit:
Ich kenn das so das man es so macht:

Private textview txtmeintext;

In der oncreate

Txtmeintext = (textview) findviewbyid(id);
Txtmeintext.settext("Test");

Sent from my iPhone using Tapatalk
 
Zuletzt bearbeitet:
C

Crosaider

Fortgeschrittenes Mitglied
Hier der Log:
Code:
09-01 11:02:23.830: D/AndroidRuntime(370): Shutting down VM
09-01 11:02:23.830: W/dalvikvm(370): threadid=1: thread exiting with uncaught exception (group=0x40015560)
09-01 11:02:23.839: E/AndroidRuntime(370): FATAL EXCEPTION: main
09-01 11:02:23.839: E/AndroidRuntime(370): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.bko.lehrerorganizer/com.bko.lehrerorganizer.Schueler}: java.lang.NullPointerException
09-01 11:02:23.839: E/AndroidRuntime(370):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1647)
09-01 11:02:23.839: E/AndroidRuntime(370):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663)
09-01 11:02:23.839: E/AndroidRuntime(370):     at android.app.ActivityThread.access$1500(ActivityThread.java:117)
09-01 11:02:23.839: E/AndroidRuntime(370):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)
09-01 11:02:23.839: E/AndroidRuntime(370):     at android.os.Handler.dispatchMessage(Handler.java:99)
09-01 11:02:23.839: E/AndroidRuntime(370):     at android.os.Looper.loop(Looper.java:123)
09-01 11:02:23.839: E/AndroidRuntime(370):     at android.app.ActivityThread.main(ActivityThread.java:3683)
09-01 11:02:23.839: E/AndroidRuntime(370):     at java.lang.reflect.Method.invokeNative(Native Method)
09-01 11:02:23.839: E/AndroidRuntime(370):     at java.lang.reflect.Method.invoke(Method.java:507)
09-01 11:02:23.839: E/AndroidRuntime(370):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
09-01 11:02:23.839: E/AndroidRuntime(370):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
09-01 11:02:23.839: E/AndroidRuntime(370):     at dalvik.system.NativeStart.main(Native Method)
09-01 11:02:23.839: E/AndroidRuntime(370): Caused by: java.lang.NullPointerException
09-01 11:02:23.839: E/AndroidRuntime(370):     at com.bko.lehrerorganizer.Schueler.onCreate(Schueler.java:44)
09-01 11:02:23.839: E/AndroidRuntime(370):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
09-01 11:02:23.839: E/AndroidRuntime(370):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611)
09-01 11:02:23.839: E/AndroidRuntime(370):     ... 11 more
09-01 11:02:25.999: I/Process(370): Sending signal. PID: 370 SIG: 9
Bei deiner Methode musst die TextView aber schon bestehen. Ich möchte sie ja dynamisch erzeugen und später mehrere hinzufügen. Wenn ich das neach deiner Methode mache würde ich ja immer nur den Text von diesem einen bestimmten Label ändern. Ich möchte schon dynamisch erzeugen und dann später jeder TextView einen eigene Text hinzufügen.
 
M

Madlip

Gast
Dann musst du dir dein eigenen Adapter schreiben


Sent from my iPhone using Tapatalk
 
M

Madlip

Gast
Falls du immer noch das Problem hast, dann versuch mal diesen Codeschnipsel hier:

Code:
LinearLayout MainLL= (LinearLayout) findViewById(R.id.myLayoutId);  
  for(int i=0; i<5; i++){ 
 TextView text = new TextView(this); 
   text.setText("The Value of i is :"+i); // <-- does it really compile without the + sign? 
   text.setTextSize(12);   
   text.setGravity(Gravity.LEFT); 
   text.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT)); 
MainLL.addView(text); 
}
 
Ähnliche Themen - HorizontalScrollView Item hinzufügen Antworten Datum
5