Alex Rivera | Logout

Place view inside FrameLayout in Android

Asked 2010-10-03T10:12:09.640
11

I want to add a view inside a FrameLayout programmatically and to place it in a specific point within the layout with a specific width and height. Does FrameLayout support this? If not, should I use an intermediate ViewGroup to achieve this?

int x; // Can be negative?
int y; // Can be negative?
int width;
int height;
View v = new View(context);
// v.setLayoutParams(?); // What do I put here?
frameLayout.addView(v);

My initial idea was to add an AbsoluteLayout to the FrameLayout and place the view inside the AbsoluteLayout. Unfortunately I just found out that AbsoluteLayout is deprecated.

Any pointers will be much appreciated. Thanks.

Edit
Report

1 Answer

0

The thread here on stackOverflow at

How do you setLayoutParams() for an ImageView?

covers it somewhat.

For instance: LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(30, 30); yourImageView.setLayoutParams(layoutParams);

implies that you need to be defining a LinearLayout.LayoutParams (or in your case a FrameLayout.layoutParams) object to pass to the setLayoutParams method of your v object.

At

http://developer.android.com/reference/android/widget/FrameLayout.html

it almost makes it looks like you could ask your v to:

generateDefaultLayoutParams () via this method if you have not defined the parameters specifically.

But it's late, and those links are making my eyes bleed a little. Let me know if they nhelp any :-)

answered 2010-10-03T12:22:12.590

Your Answer