我的xml文件中有一个工具栏,其中没有定义子视图。当我们调用setSupportActionBar(toolbar)
时,我想在工具栏中的默认标题的确切位置添加TextView。在特定事件中,我喜欢在特定事件的情况下淡出或淡出这两个视图。
我尝试在活动的onCreate()
中执行以下操作,但除工具栏中的默认标题外,没有任何内容可见。
TextView tv = new TextView(this);
tv.setLayoutParams(toolbarTitle.getLayoutParams());
tv.setHeight(toolbarTitle.getHeight());
tv.setWidth(toolbarTitle.getWidth());
tv.setText("Other Title");
tv.setLeft(toolbarTitle.getLeft());
toolbar.addView(tv);
我还尝试在工具栏中添加一个RelativeLayout,其宽度和高度设置为匹配父级,但这次,工具栏的默认标题TextView消失。
如何在工具栏中的默认标题TextView的确切位置添加另一个TextView?
答案 0 :(得分:1)
您可以使用AppBarLayout
,如下所示
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.AppBarLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/toolbar_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
>
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
>
<TextView
android:id="@+id/toolbar_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/aadhaar_sign_up"
android:textColor="@color/white"
android:textSize="18.0sp"
app:fontName="Font-Medium.ttf"
/>
</android.support.v7.widget.Toolbar>
</android.support.design.widget.AppBarLayout>
然后使用textview如下
Toolbar toolbar = (Toolbar) getActivity().findViewById(R.id.toolbar);
((TextView) toolbar.findViewById(R.id.toolbar_title)).setText(title);
答案 1 :(得分:0)
我在我的活动的<FirstList>
<FirstListItem>
<Content>FirstListItem para1</Content>
<Content>FirstListItem para2</Content>
<Content>FirtsListItem para3</Content>
<SecondList>
<SecondListItem>
<Content>First Inner ListItem para1</Content>
<Content>First Inner ListItem para2</Content>
</SecondListItem>
<SecondListItem>
<Content>Second Inner ListItem para1</Content>
<BulletedList>
<BulletedListItem>
<Content>Outer Bulleted List para1</Content>
<Content>Outer Bulleted List Para2</Content>
<BulletedList>
<BulletedListItem>
<Content>Inner Bulleted List para</Content>
</BulletedListItem>
<BulletedListItem>
<Content>Second Inner bulleted List para1</Content>
<Content>Second Inner bulleted List para2</Content>
</BulletedListItem>
</BulletedList>
<Content>Outer Bulleted List Para3</Content>
</BulletedListItem>
<BulletedListItem>
<Content>Second Outer bulleted List</Content>
</BulletedListItem>
</BulletedList>
<Content>Second Inner List Item para2</Content>
</SecondListItem>
</SecondList>
<Content>First List Item para4</Content>
</FirstListItem>
<FirstListItem>
<Content>SecondListItem para1</Content>
</FirstListItem>
</FirstList>
方法中使用getSupportActionBar().setDisplayShowTitleEnabled(false)
禁用工具栏中的标题,并在布局中的工具栏中放置两个重叠的textView用relativeLayout封装它们。然后我按照自己的意愿制作动画。在更改文字时,我使用了onCreate()
而不是titleTextView.setText()
方法。