Ich lerne gerade Androidprogrammierung mit dem Buch "Android-Apps entwickeln". Mit Java habe ich schon etwas Erfahhrung.
Als ich den Programmcode, den ich eigentlich nur abgeschrieben hab, ausführen wollte, stürzte das Programm dauernd ab.
Dasselbe passiert auch bei folgendem Beispielprogramm:
[JAVA]
...
public class MainActivity extends Activity
{
private ImageView iv;
private FrameLayout bereich;
private float massstab;
private int breite, hoehe;
private Random zufallsgenerator;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
zufallsgenerator = new Random();
bereich = (FrameLayout) findViewById(R.id.bereich);
massstab = getResources().getDisplayMetrics().density;
breite = bereich.getWidth();
hoehe = bereich.getHeight();
eineMueckeZeichnen();
}
public void eineMueckeZeichnen()
{
int breite_muecke = (int) Math.round(massstab*50);
int hoehe_muecke = (int) Math.round(massstab*42);
int links = zufallsgenerator.nextInt( breite-breite_muecke);
int oben = zufallsgenerator.nextInt( hoehe-hoehe_muecke );
iv = new ImageView(this);
iv.setImageResource(R.drawable.icon);
FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(breite_muecke, hoehe_muecke);
params.leftMargin = links;
params.topMargin = oben;
params.gravity = Gravity.TOP + Gravity.START;
iv.setLayoutParams(params);
bereich.addView((ImageView)iv);
}
}
[/code]
Das Programm stürzt aber nur ab, wenn die Methode eineMückeZeichnen() aufgerufen wird.
Kann mir jemand sagen, wie ich alternativ einen ImageView zu einem Layout hinzufügen kann? Ich will den ImageView nicht über xml hinzufügen, da die Anzahl der Elemente sowie ihre Position variabel sein soll.
Noch ein paar Infos: Ich benutze Eclipse und habe das Programm sowohl auf einem Emulator als auch auf einem echten Gerät getestet.
Vielen Dank schonmal
Edit: folgende Fehler werden angezeigt

Als ich den Programmcode, den ich eigentlich nur abgeschrieben hab, ausführen wollte, stürzte das Programm dauernd ab.
Dasselbe passiert auch bei folgendem Beispielprogramm:
[JAVA]
...
public class MainActivity extends Activity
{
private ImageView iv;
private FrameLayout bereich;
private float massstab;
private int breite, hoehe;
private Random zufallsgenerator;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
zufallsgenerator = new Random();
bereich = (FrameLayout) findViewById(R.id.bereich);
massstab = getResources().getDisplayMetrics().density;
breite = bereich.getWidth();
hoehe = bereich.getHeight();
eineMueckeZeichnen();
}
public void eineMueckeZeichnen()
{
int breite_muecke = (int) Math.round(massstab*50);
int hoehe_muecke = (int) Math.round(massstab*42);
int links = zufallsgenerator.nextInt( breite-breite_muecke);
int oben = zufallsgenerator.nextInt( hoehe-hoehe_muecke );
iv = new ImageView(this);
iv.setImageResource(R.drawable.icon);
FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(breite_muecke, hoehe_muecke);
params.leftMargin = links;
params.topMargin = oben;
params.gravity = Gravity.TOP + Gravity.START;
iv.setLayoutParams(params);
bereich.addView((ImageView)iv);
}
}
[/code]
Code:
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/bereich"
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="com.example.test.MainActivity" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/hello_world" />
</FrameLayout>
Das Programm stürzt aber nur ab, wenn die Methode eineMückeZeichnen() aufgerufen wird.
Kann mir jemand sagen, wie ich alternativ einen ImageView zu einem Layout hinzufügen kann? Ich will den ImageView nicht über xml hinzufügen, da die Anzahl der Elemente sowie ihre Position variabel sein soll.
Noch ein paar Infos: Ich benutze Eclipse und habe das Programm sowohl auf einem Emulator als auch auf einem echten Gerät getestet.
Vielen Dank schonmal
Edit: folgende Fehler werden angezeigt

Zuletzt bearbeitet: