toggle label font weight according to m3
This commit is contained in:
parent
98677cd307
commit
f747d4c979
|
@ -1,9 +1,11 @@
|
||||||
package org.joinmastodon.android.ui.views;
|
package org.joinmastodon.android.ui.views;
|
||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
import android.graphics.Typeface;
|
||||||
import android.util.AttributeSet;
|
import android.util.AttributeSet;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.widget.LinearLayout;
|
import android.widget.LinearLayout;
|
||||||
|
import android.widget.TextView;
|
||||||
|
|
||||||
import java.util.function.IntConsumer;
|
import java.util.function.IntConsumer;
|
||||||
import java.util.function.IntPredicate;
|
import java.util.function.IntPredicate;
|
||||||
|
@ -45,9 +47,7 @@ public class TabBar extends LinearLayout{
|
||||||
listener.accept(v.getId());
|
listener.accept(v.getId());
|
||||||
if(v.getId()==selectedTabID)
|
if(v.getId()==selectedTabID)
|
||||||
return;
|
return;
|
||||||
findViewById(selectedTabID).setSelected(false);
|
selectTab(v.getId());
|
||||||
v.setSelected(true);
|
|
||||||
selectedTabID=v.getId();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean onChildLongClick(View v){
|
private boolean onChildLongClick(View v){
|
||||||
|
@ -60,8 +60,17 @@ public class TabBar extends LinearLayout{
|
||||||
}
|
}
|
||||||
|
|
||||||
public void selectTab(int id){
|
public void selectTab(int id){
|
||||||
findViewById(selectedTabID).setSelected(false);
|
toggleSelected(selectedTabID, false);
|
||||||
selectedTabID=id;
|
selectedTabID=id;
|
||||||
findViewById(selectedTabID).setSelected(true);
|
toggleSelected(id, true);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void toggleSelected(int selectedTabID, boolean selected){
|
||||||
|
LinearLayout tab=findViewById(selectedTabID);
|
||||||
|
tab.setSelected(selected);
|
||||||
|
View v=tab.findViewWithTag("label");
|
||||||
|
if(v instanceof TextView text){
|
||||||
|
text.setTypeface(Typeface.create(text.getTypeface(), selected ? Typeface.BOLD : Typeface.NORMAL));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -51,6 +51,7 @@
|
||||||
android:layout_gravity="center_horizontal"
|
android:layout_gravity="center_horizontal"
|
||||||
android:layout_marginTop="4dp"
|
android:layout_marginTop="4dp"
|
||||||
android:textColor="@color/m3_on_surface_selector"
|
android:textColor="@color/m3_on_surface_selector"
|
||||||
|
android:tag="label"
|
||||||
android:text="@string/sk_tab_home" />
|
android:text="@string/sk_tab_home" />
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
@ -91,6 +92,7 @@
|
||||||
android:textColor="@color/m3_on_surface_selector"
|
android:textColor="@color/m3_on_surface_selector"
|
||||||
android:layout_gravity="center_horizontal"
|
android:layout_gravity="center_horizontal"
|
||||||
android:layout_marginTop="4dp"
|
android:layout_marginTop="4dp"
|
||||||
|
android:tag="label"
|
||||||
android:text="@string/sk_tab_search" />
|
android:text="@string/sk_tab_search" />
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
@ -149,6 +151,7 @@
|
||||||
android:layout_gravity="center_horizontal"
|
android:layout_gravity="center_horizontal"
|
||||||
android:layout_marginTop="4dp"
|
android:layout_marginTop="4dp"
|
||||||
android:textColor="@color/m3_on_surface_selector"
|
android:textColor="@color/m3_on_surface_selector"
|
||||||
|
android:tag="label"
|
||||||
android:text="@string/sk_tab_notifications" />
|
android:text="@string/sk_tab_notifications" />
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
@ -195,6 +198,7 @@
|
||||||
android:layout_gravity="center_horizontal"
|
android:layout_gravity="center_horizontal"
|
||||||
android:layout_marginTop="4dp"
|
android:layout_marginTop="4dp"
|
||||||
android:textColor="@color/m3_on_surface_selector"
|
android:textColor="@color/m3_on_surface_selector"
|
||||||
|
android:tag="label"
|
||||||
android:text="@string/sk_tab_profile" />
|
android:text="@string/sk_tab_profile" />
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
Loading…
Reference in New Issue