Overlay-text über die Bildansicht im framelayout programmatisch Android
Ich versuche zu implementieren ist ein textview über ein Bild in ein framelayout in der Mitte und unten das layout, wie es hier zu sehen ist:
http://developer.android.com/resources/articles/layout-tricks-merge.html
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ImageView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:scaleType="center"
android:src="@drawable/golden_gate" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="20dip"
android:layout_gravity="center_horizontal|bottom"
android:padding="12dip"
android:background="#AA000000"
android:textColor="#ffffffff"
android:text="Golden Gate" />
</FrameLayout>
Ich versuche zu implementieren, die dies programmatisch, aber ohne Erfolg.. ich bekomme immer die textview in der oberen linken Ecke..kann jemand helfen? Hier ist mein code:
FrameLayout frameLay = new FrameLayout(MainScreen.this);
LayoutParams layoutParamsFrame = new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
frameLay.setLayoutParams(layoutParamsFrame);
LinearLayout.LayoutParams layoutParamsImage= new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
ImageView imageView= new ImageView(MainScreen.this);
imageView.setImageResource(R.drawable.movie);
imageView.setLayoutParams(layoutParamsImage);
TextView theText=new TextView(MainScreen.this);
theText.setText("GOLDEN Gate");
theText.setTextColor(Color.WHITE);
theText.setTypeface(Typeface.DEFAULT_BOLD);
LayoutParams layoutParamsText= new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
theText.setLayoutParams(layoutParamsText);
theText.setGravity(Gravity.CENTER_HORIZONTAL|Gravity.BOTTOM);
frameLay.addView(theText);
frameLay.addView(imageView);
InformationsquelleAutor andreasv | 2011-10-09
Du musst angemeldet sein, um einen Kommentar abzugeben.
Alles, was Sie tun müssen, ias machen die textview zu füllen, die Eltern wie
Wenn Sie die Schwerkraft, um die textview, bedeutet es, Sie sagen das textview, wo seine Kinder. Aber da dein textview hat nur die Größe des Textes, die der Schwerkraft nicht zeigen keinen Unterschied. So einfach machen die textview, die zum füllen der Eltern.
Aber ich denke, RelativeLayout ist viel besser geeignet dafür als das FrameLayout. Mit dem RelativeLayout dies ist, wie es Aussehen würde,
Dank einer million
InformationsquelleAutor blessenm
Statt ein FrameLayout, möchten Sie vielleicht versuchen Sie es mit einem RelativeLayout als der container. So können Sie die überlagerung von text, wohin Sie wollen. Was sollte für Sie arbeiten wird, um ordnen Sie die folgenden, um Ihre TextView innerhalb RelativeLayout:
Dann können Sie eine Feinabstimmung der Positionierung, also die Ränder.
InformationsquelleAutor SBerg413