Android Realizes Horizontal Line Below Text
- 2021-12-04 19:48:48
- OfStack
In this paper, we share the specific code of adding horizontal lines below Android for your reference. The specific contents are as follows
public class WhiteTextviewWithWhiteBottomLine extends LinearLayout {
private Context mContext;
public WhiteTextviewWithWhiteBottomLine(Context context) {
this(context, null);
}
public WhiteTextviewWithWhiteBottomLine(Context context, @Nullable AttributeSet attrs) {
this(context, attrs, 0);
}
public WhiteTextviewWithWhiteBottomLine(Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
mContext = context;
initViews();
}
private TextView textView;
private View viewLine;
private void initViews() {
View view = View.inflate(mContext, R.layout.view_textview_with_bottom_line, null);
textView = view.findViewById(R.id.tv_view_textview_with_line);
viewLine = view.findViewById(R.id.view_view_textview_with_line);
this.addView(view);
setSelected(false);
}
public void setTextViewText(String s) {
textView.setText(s);
}
public void setLineColor(@ColorInt int color) {
viewLine.setBackgroundColor(color);
}
public void setSelected(boolean isSelected) {
if (isSelected) {
viewLine.setVisibility(VISIBLE);
} else {
viewLine.setVisibility(GONE);
}
}
public boolean isSelected() {
if (viewLine.getVisibility() == View.VISIBLE) {
return true;
}else {
return false;
}
}
}
Layout file:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="vertical">
<TextView
android:id="@+id/tv_view_textview_with_line"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:padding="10dp"
android:text=" Test "
android:textColor="@color/white"
android:textSize="12sp" />
<View
android:id="@+id/view_view_textview_with_line"
android:layout_width="30dp"
android:layout_height="1dp"
android:layout_gravity="center_horizontal"
android:background="@color/white" />
</LinearLayout>
</LinearLayout>
If you want to change the color of text and lines, modify the contents of the layout file directly.