ThatBoiJo
ThatBoiJo

Reputation: 319

Adding view to ScrollView removes margins

I made a custom xml that has a LinearLayout with the layout_margins set. If i view the graphic layout it shows the margins, but in another activity when i try to add this view to a LinearLayout within a ScrollView none of the margins are there. Here's the custom xml code....

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:background="@drawable/run_background"
android:layout_marginLeft="10dp"
android:layout_marginTop="5dp"
android:layout_marginRight="10dp"
android:layout_marginBottom="5dp">

<TextView
    android:id="@+id/tvRunName"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textColor="@android:color/white"
    android:textAppearance="?android:attr/textAppearanceMedium"
    android:layout_gravity="center"
    android:layout_marginTop="10dp" />

Here's the code that adds the view....

        for(int x = 0; x < runs.size(); x++){

        inflater = (LayoutInflater)this.getSystemService(this.LAYOUT_INFLATER_SERVICE);
        View layout = inflater.inflate(R.layout.run_layout, null);


        TextView name = (TextView) layout.findViewById(R.id.tvRunName);
        name.setText(runs.get(x).getName());

        llRuns.addView(layout);
    }

How can i have the views spaced out like i want?

Upvotes: 0

Views: 58

Answers (1)

KrisPrajapati
KrisPrajapati

Reputation: 196

The LayoutParams are not being included while inflating the layout. Try adding a third parameter while inflating the layout:

View layout = inflater.inflate(R.layout.run_layout, null, false);

Upvotes: 1

Related Questions