Closed ChinaFLTV closed 1 year ago
小伙子,经过深思熟虑,最终不采纳这个建议,具体原因如下:
目前子标题的需求比较少,大多数情况下还是只有一个主标题
目前框架的设计是三个 TextView,如果再添加一个 TextView 可能会导致性能下降
但是仍然有其他方式来实现你的需求,目前提供两种实现思路给到你这边
第一种方案:在 xml 布局中直接嵌套自定义的布局
<com.hjq.bar.TitleBar
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="15dp">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:gravity="center_horizontal"
android:orientation="vertical"
android:paddingTop="5dp"
android:paddingBottom="5dp" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="我是主标题"
android:textColor="#333333"
android:textSize="15sp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="3dp"
android:text="我是副标题"
android:textColor="#666666"
android:textSize="14sp" />
</LinearLayout>
</com.hjq.bar.TitleBar>
第二种方案:在代码中,使用《换行符+富文本+设置多行》方式来实现
SpannableStringBuilder builder = new SpannableStringBuilder();
int startPoint = builder.length();
builder.append("我是主标题");
builder.append("\n");
int endPoint = builder.length();
ForegroundColorSpan imageSpan = new ForegroundColorSpan(Color.RED);
builder.setSpan(imageSpan, startPoint, endPoint, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
builder.append("我是副标题");
titleBar.getTitleView().setSingleLine(false);
titleBar.setTitle(builder);
好的,谢谢
你觉得框架有什么不足之处?【必答】
暂时没有
issue 是否有人曾提过类似的建议?【必答】
否
框架文档是否有提及到此问题?【必答】
是
你觉得该怎么去完善会比较好?【非必答】
No response