Search code examples
androidandroid-linearlayoutandroid-layout-weight

How to set view weights?


I'm trying to get the views inside a LinearLayout to fill the width. I have tried setting it by using LayoutParams, but it gave me an error:

My code:

EditText et = new EditText(v.getContext());
                    et.setHint("asset ");
                    et.setTextSize(12);
                    et.setLayoutParams(new LayoutParams(
                            LayoutParams.WRAP_CONTENT,
                            LayoutParams.WRAP_CONTENT, 0.25f));
                    et.setPadding(0, 15, 0, 10);

The error:

The constructor ActionBar.LayoutParams(int, int, float) is undefined


Solution

  • Just what the error says, no ActionBarLayoutParams constructor takes a float. You need one of the available graivty constants for the gravity

    But it looks like you are importing the wrong LayoutParams. If this is for a LinearLayout and not ActionBar then you need to be importing LinearLayout.LayoutParams

    import android.widget.LinearLayout.LayoutParams
    

    ActionBar.LayoutParams

    LinearLayout.LayoutParams