所以我有一个工具栏,它是包含两个文本视图的垂直线性布局的父级。当我不使用向上按钮运行活动时,一切看起来都很好。但是,当我添加向上按钮时,它似乎将线性布局推向右侧。似乎有一个隐含的水平线性布局,其中包含向上按钮和我自己的垂直线性布局。
如果我不能阻止向上按钮这样做,是否有办法设置向上按钮而不是通过编程方式进行?
旁注:之所以不使用ActionBar.SetTitle / SetSubtitle函数,是因为我无法按照自己的意愿设置样式。但是,这些功能在间距方面没有相同的问题。
这是我的onCreate方法中的活动代码。我还添加了相关的导入语句:
import android.support.v7.app.ActionBar;
import android.support.v7.widget.Toolbar;
//Get tool bar
Toolbar toolbar = (Toolbar) findViewById(R.id.thickToolBar);
setSupportActionBar(toolbar);
final ActionBar supportActionBar = getSupportActionBar();
supportActionBar.hide();
supportActionBar.setDisplayHomeAsUpEnabled(true); //If I comment out this line, things display normally. But ofc no up button
final TextView actionBarTitle = (TextView) findViewById(R.id.toolbar_title);
final TextView actionBarSubtitle = (TextView) findViewById(R.id.toolbar_subtitle);
supportActionBar.setDisplayShowTitleEnabled(false);
actionBarSubtitle.setText(query);
这是我的xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="0dp"
android:orientation="vertical"
android:padding="0dp"
tools:context="com.kreyoldict.kreyoldict.DefinitionActivity">
<RelativeLayout
android:id="@+id/progressBarContainer"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:visibility="gone">
<ProgressBar
android:id="@+id/progressBarDefinitionActivity"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:visibility="visible"/>
</RelativeLayout>
<android.support.v7.widget.Toolbar
android:id="@+id/thickToolBar"
android:layout_width="match_parent"
android:layout_height="250dp"
android:layout_margin="0dp"
android:background="?attr/colorPrimary"
android:elevation="4dp"
android:padding="0dp"
android:textAlignment="center"
android:theme="@style/AppActionBar"
android:visibility="visible"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
app:contentInsetLeft="0dp"
app:contentInsetStart="0dp"
app:contentInsetStartWithNavigation="0dp">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_margin="0dp"
android:layout_marginRight="0dp"
android:orientation="vertical"
android:padding="0dp">
<TextView
android:id="@+id/toolbar_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="Translated Word"
android:textAlignment="center"
android:textAppearance="@style/TextAppearance.AppCompat.Display2"
android:textColor="@android:color/white"/>
<TextView
android:id="@+id/toolbar_subtitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="Original Text"
android:textAlignment="center"
android:textAppearance="@style/TextAppearance.AppCompat.Display1"
android:textColor="@android:color/white"/>
</LinearLayout>
</android.support.v7.widget.Toolbar>
<ScrollView
android:id="@+id/scrollViewDefinitionActivity"
android:layout_width="match_parent"
android:layout_height="402dp"
>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:id="@+id/textViewWordDefinition"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="20dp"
android:text="@string/tv_detail_activity_word_definition"
android:textAppearance="@style/TextAppearance.AppCompat.Body1"/>
</LinearLayout>
</ScrollView>
</LinearLayout>
这是我的照片
[组件树] [1]没关系,我需要更多代表才能发布3个以上的链接。
这是带有向上按钮和布局范围的应用程序图片:
up button shenanigans
因为我的工具栏是红色的,所以很难看,但是看起来线性布局是在向上按钮结束的地方开始的。
这是picture with no up button and layout bounds
最佳答案
Add this attributes to toolbar
<android.support.v7.widget.Toolbar
android:contentInsetLeft="0dp"
android:contentInsetStart="0dp"
app:contentInsetStartWithNavigation="0dp"
app:contentInsetLeft="0dp"
app:contentInsetStart="0dp"/>