textview - Overlay text over imageview in framelayout programmatically - Android -
i trying implement textview on image in framelayout @ center , bottom of layout seen here:
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>
i trying implement programmatically no luck.. textview on top left corner..can help? here 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);
all need ias make textview fill parent like
layoutparams layoutparamstext= new layoutparams(layoutparams.fill__parent, layoutparams.fill_parent);
when set gravity textview, mean telling textview position children. since textview has size of text, gravity wont show difference. make textview fill parent.
but think relativelayout lot more suitable framelayout. using relativelayout how look
relativelayout rlayout = new relativelayout(this); layoutparams rlparams = new layoutparams(layoutparams.fill_parent ,layoutparams.fill_parent); rlayout.setlayoutparams(rlparams); imageview image= new imageview(this); image.setimageresource(r.drawable.icon); image.setlayoutparams(rlparams); relativelayout.layoutparams tparams = new relativelayout.layoutparams (layoutparams.wrap_content,layoutparams.wrap_content); tparams.addrule(relativelayout.center_horizontal, relativelayout.true); tparams.addrule(relativelayout.align_parent_bottom, relativelayout.true); textview text=new textview(this); text.settext("golden gate"); text.settextcolor(color.white); text.settypeface(typeface.default_bold); text.setlayoutparams(tparams); rlayout.addview(image); rlayout.addview(text); setcontentview(rlayout);
Comments
Post a Comment