Reputation: 2157
I have this design:
and I can't imagine how to create smth like that. At the beginning I used bottomNavgationview, but it didn't help me because I can't make that overlapping of selected item and align text at the item. Now, I have created my own view which is based on linearLayout:
<LinearLayout
android:id="@+id/navigation_view"
android:layout_width="match_parent"
android:layout_height="56dp"
android:layout_marginTop="5dp"
android:background="@color/white">
<TextView
android:id="@+id/received"
android:layout_width="0dp"
android:layout_height="56dp"
android:layout_weight="6"
android:gravity="center"
android:layout_gravity="end"
android:textColor="#565D63"
android:fontFamily="@font/opensans_semibold"
android:text="@string/received"
android:textAlignment="center" />
<TextView
android:id="@+id/sent"
android:layout_width="0dp"
android:layout_height="56dp"
android:layout_weight="6"
android:gravity="center"
android:textColor="#565D63"
android:fontFamily="@font/opensans_semibold"
android:text="@string/sent"
android:textAlignment="center" />
<TextView
android:id="@+id/draft"
android:layout_width="0dp"
android:layout_height="56dp"
android:layout_weight="6"
android:textColor="#565D63"
android:fontFamily="@font/opensans_semibold"
android:gravity="center"
android:text="@string/drafts"
android:textAlignment="center" />
</LinearLayout>
and I tried to set translationZ
programmatically, but I didn't manage to reach my design. I have some thought about framelayout
from this and this questions but it didn't help me. Maybe someone know how I can solve my problem?
Upvotes: 0
Views: 98
Reputation: 245
Try this one.
<LinearLayout
android:id="@+id/navigation_view"
android:layout_width="match_parent"
android:layout_height="180dp"
android:layout_marginTop="5dp"
android:orientation="horizontal"
android:background="@color/white">
<TextView
android:id="@+id/received"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="6"
android:gravity="center"
android:layout_gravity="end"
android:textColor="#565D63"
android:fontFamily="@font/opensans_semibold"
android:text="@string/received"
android:textAlignment="center" />
<TextView
android:id="@+id/sent"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="6"
android:gravity="center"
android:textColor="#565D63"
android:fontFamily="@font/opensans_semibold"
android:text="@string/sent"
android:textAlignment="center" />
<TextView
android:id="@+id/draft"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="6"
android:textColor="#565D63"
android:fontFamily="@font/opensans_semibold"
android:gravity="center"
android:text="@string/drafts"
android:textAlignment="center" />
</LinearLayout>
Hope it helps!!!
I think you forgot to add orientation in the parent layout.
Upvotes: 1
Reputation: 13
<LinearLayout
android:layout_width="match_parent"
android:layout_height="50dp"
android:orientation="horizontal">
<TextView
android:layout_width="0dp"
android:layout_weight="2"
android:layout_gravity="center"
android:textColor="#000"
android:gravity="center"
android:text="dsgd"
android:background="#F9E79F"
android:layout_height="match_parent" />
<TextView
android:layout_width="0dp"
android:layout_weight="2"
android:textColor="#000"
android:layout_gravity="center"
android:gravity="center"
android:text="dsgd"
android:layout_height="match_parent" />
<TextView
android:layout_width="0dp"
android:layout_weight="2"
android:textColor="#000"
android:layout_gravity="center"
android:gravity="center"
android:text="dsgd"
android:layout_height="match_parent" />
</LinearLayout>
Upvotes: 1
Reputation: 69
I have modified your code a little bit this should help.
<LinearLayout
android:id="@+id/navigation_view"
android:layout_width="match_parent"
android:layout_height="180dp"
android:layout_marginTop="5dp"
android:background="@color/white">
<TextView
android:id="@+id/received"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="6"
android:gravity="center"
android:layout_gravity="end"
android:textColor="#565D63"
android:fontFamily="@font/opensans_semibold"
android:text="@string/received"
android:textAlignment="center" />
<TextView
android:id="@+id/sent"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="6"
android:gravity="center"
android:textColor="#565D63"
android:fontFamily="@font/opensans_semibold"
android:text="@string/sent"
android:textAlignment="center" />
<TextView
android:id="@+id/draft"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="6"
android:textColor="#565D63"
android:fontFamily="@font/opensans_semibold"
android:gravity="center"
android:text="@string/drafts"
android:textAlignment="center" />
</LinearLayout>
This code will create all textviews matching the height of your linear layout now after that you can set background color of a textview by default as per your design and if on click is being used then you can do that too.
Upvotes: 1