Ich arbeite an meiner ersten Android-App und habe in einige Schwierigkeiten gerannt. Ich versuche eine neue Aktivität zu starten, die eine ArrayList aus der vorherigen Aktivität aufnimmt und für jedes Element in der Liste eine Schaltfläche erstellt. Ich habe versucht, viele andere Stapelüberlaufpfosten zu betrachten, aber keiner von ihnen hat geholfen, mein Problem zu lösen.Android-App dynamisch erstellten Schaltflächen erscheinen alle an der gleichen Stelle
Ich habe viele verschiedene Strategien ausprobiert, und mein Code ist zur Zeit wie folgt:
public class VideoMenu extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_video_menu);
Bundle b = getIntent().getExtras();
ArrayList<String> videos = b.getStringArrayList("videos");
setContentView(R.layout.activity_video_menu);
for(int i=0;i<videos.size();i++){
Button myButton = new Button(this);
myButton.setText(videos.get(i));
myButton.setId(i);
RelativeLayout ll = (RelativeLayout)findViewById(R.id.videos);
RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
if (i != 0) {
lp.addRule(RelativeLayout.END_OF, i - 1);
}
myButton.setLayoutParams(lp);
ll.addView(myButton,lp);
}
}
}
und XML-Code:
<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:id="@+id/videos"
android:layout_alignParentBottom="true"
android:layout_alignWithParentIfMissing="true"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:orientation="vertical">
Dies kompiliert just fine , aber alle Tasten erscheinen übereinander. Wenn Sie Gründe dafür angeben könnten, warum Code-Vorschläge funktionieren könnten, wäre ich Ihnen dankbar. Ich möchte mehr erfahren über diese :)
Edit: Fest Typo
können Sie ListView in Android verwenden, um Ihr Problem zu lösen, finden Sie viele Tutorials auf Google wie http://www.vogella.com/tutorials/AndroidListView/article.html. Es erleichtert die Handhabung beim Scrollen und auch bei OnClick-Ereignissen. – Swapnil