Circular Buttons In LinearLayout:Vertical
Solution 1:
Well. For one, all your layout_widths in the LinearLayouts children are set to match_parent. After the first child renders, then there won't be room for anything else because it will take up all the space.
Secondly, I would highly suggest against using all the tags. Instead I would just set padding (or margins) for your buttons.
Solution 2:
If I understand correctly, you want the View
s inside the LinearLayout
to be spaced with weight
. If so, then android:layout_weight
should be on each View
and not the LinearLayout
. The LinearLayout
would have the android:weightSum
and each View
would have the weight
of say 1. But you don't even need weightSum
if you want them all spaced evenly.
<LinearLayout
android:id="@+id/left_bar"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="8"> // Try removing this and add weights to your views
I don't know if this will fix your problem but I would start with that
Solution 3:
I had the same problem. I had to have 4 circular buttons in a horizontal LinearLayout equally spaced.
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginBottom="10dp" >
<Button
android:id="@+id/btn1"
style="@style/BotonCircular"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.2"
android:background="@drawable/boton_circulo_negro" />
<View
android:layout_weight="0.033"
android:layout_width="0dp"
android:layout_height="match_parent"
/>
<Button
android:id="@+id/btn2"
style="@style/BotonCircular"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.2"
android:background="@drawable/boton_circulo_negro" />
<View
android:layout_weight="0.033"
android:layout_width="0dp"
android:layout_height="match_parent"
/>
<Button
android:id="@+id/btn3"
style="@style/BotonCircular"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.2"
android:background="@drawable/boton_circulo_negro" />
<View
android:layout_weight="0.033"
android:layout_width="0dp"
android:layout_height="match_parent"
/>
<Button
android:id="@+id/btn4"
style="@style/BotonCircular"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.2"
android:background="@drawable/boton_circulo_negro" />
</LinearLayout>
And to make them all of the same height I placed this code inside onCreate on my Activity
final Button btn1 = (Button) findViewById(R.id.btn1);
final Button btn2 = (Button) findViewById(R.id.btn2);
final Button btn3 = (Button) findViewById(R.id.btn3);
final Button btn4 = (Button) findViewById(R.id.btn4);
ViewTreeObserver vto = btn1.getViewTreeObserver();
vto.addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
btn1.setHeight(btn1.getWidth());
btn2.setHeight(btn1.getWidth());
btn3.setHeight(btn1.getWidth());
btn4.setHeight(btn1.getWidth());
}
});
Hope this helps someone with the same problem.
Post a Comment for "Circular Buttons In LinearLayout:Vertical"