我正在使用工具栏项在我的应用中实现素材设计。在我的工具栏中,我添加了“imageview”和“textview”,并替换了“textView”的标题文本
这是我的代码
<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:local="http://schemas.android.com/apk/res-auto"
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="?attr/actionBarSize"
android:background="?attr/colorPrimary"
local:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
local:popupTheme="@style/ThemeOverlay.AppCompat.Light" >
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<ImageView
android:id="@+id/logo_image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:src="@drawable/app"
android:layout_centerVertical="true"
android:scaleType="centerInside" />
<TextView
android:id="@+id/text_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="10dp"
android:singleLine="true"
android:ellipsize="end"
android:textStyle="bold"
android:textSize="20sp"
android:textColor="#fff"
android:layout_toRightOf="@+id/logo_image"
/>
</RelativeLayout>
</android.support.v7.widget.Toolbar>
在textview上面我必须设置所有那些认为的textize,color,textstyle,
android:singleLine="true"
android:ellipsize="end"
android:textStyle="bold"
android:textSize="20sp"
android:textColor="#fff"
但是我需要在这里设置默认的标题文字样式,怎么做?,请给出一些想法
答案 0 :(得分:3)
您可以使用
实现此目的风格= “@风格/ TextAppearance.Widget.AppCompat.Toolbar.Title”
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/title_activity_login"
style="@style/TextAppearance.Widget.AppCompat.Toolbar.Title"
/>
答案 1 :(得分:0)
我不知道这是否有帮助。以下是来自Android Support Library v7源代码的Toolbar
的实现,
/**
* Set the title of this toolbar.
*
* <p>A title should be used as the anchor for a section of content. It should
* describe or name the content being viewed.</p>
*
* @param title Title to set
*/
public void setTitle(CharSequence title) {
if (!TextUtils.isEmpty(title)) {
if (mTitleTextView == null) {
final Context context = getContext();
mTitleTextView = new TextView(context);
mTitleTextView.setSingleLine();
mTitleTextView.setEllipsize(TextUtils.TruncateAt.END);
if (mTitleTextAppearance != 0) {
mTitleTextView.setTextAppearance(context, mTitleTextAppearance);
}
if (mTitleTextColor != 0) {
mTitleTextView.setTextColor(mTitleTextColor);
}
}
if (mTitleTextView.getParent() == null) {
addSystemView(mTitleTextView);
updateChildVisibilityForExpandedActionView(mTitleTextView);
}
} else if (mTitleTextView != null && mTitleTextView.getParent() != null) {
removeView(mTitleTextView);
}
if (mTitleTextView != null) {
mTitleTextView.setText(title);
}
mTitleText = title;
}
您可以使用它来设置TextView
的样式。
答案 2 :(得分:-2)
在textview xml中使用这些:
android:textSize="20sp"
android:fontFamily="sans-serif-medium"
android:singleLine="true"
android:ellipsize="end"