2017-06-26 6 views
0

今日私は予期しない問題に直面しています。ツールバー(android.support.v7.widget.Toolbar)ウィジェット内でConstraintLayoutを使用しようとすると、余分なスペースが必要です.LayanearLayoutのような別のレイアウトの中で、同じXMLコードでConstraintLayoutを使用すると、うまく動作します(周囲に予期せず隙間がない)。以下、上記XMLのConstraintLayoutはツールバー(android.support.v7.widget.Toolbar)ウィジェットに含まれているときに余分なスペースをとります

my_inside_toolbar.xml

<?xml version="1.0" encoding="utf-8"?> 
<android.support.constraint.ConstraintLayout 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="wrap_content" 
    android:background="#f90511" 
    tools:layout_editor_absoluteX="0dp" 
    tools:layout_editor_absoluteY="81dp"> 


    <Button 
     android:id="@+id/button4" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="0dp" 
     android:background="#000" 
     android:text="Button" 
     android:textColor="#fff" 
     app:layout_constraintHorizontal_chainStyle="spread_inside" 
     app:layout_constraintLeft_toLeftOf="parent" 
     app:layout_constraintRight_toLeftOf="@+id/button5" 
     app:layout_constraintTop_toTopOf="parent" /> 

    <Button 
     android:id="@+id/button5" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="0dp" 
     android:background="#0b8653" 
     android:text="Button" 
     android:textColor="#fff" 
     app:layout_constraintLeft_toRightOf="@+id/button4" 
     app:layout_constraintRight_toLeftOf="@+id/button6" 
     app:layout_constraintTop_toTopOf="@+id/button4" /> 

    <Button 
     android:id="@+id/button6" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="0dp" 
     android:background="#000" 
     android:text="Button" 
     android:textColor="#fff" 
     app:layout_constraintLeft_toRightOf="@+id/button5" 
     app:layout_constraintRight_toRightOf="parent" 
     app:layout_constraintTop_toTopOf="@+id/button5" /> 
</android.support.constraint.ConstraintLayout> 

デザインビュー:

ConstraintLayout desing mode picture

my_toolbar.xml問題が生じ内部私はこのXMLを含む

enter image description here

注:ここではイエロー色はツールバーウィジェットの背景である。ここ

は my_toolbar.xml以下、上記のXMLのための

<?xml version="1.0" encoding="utf-8"?> 
<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:background="#f5e903"> 

    <include 
     android:id="@+id/la" 
     layout="@layout/my_inside_toolbar.xml" /> 

</android.support.v7.widget.Toolbar> 

デザインビューです。余分な黄色い背景は予期せぬスペースを示しています。

私の質問: ツールバー内でConstraintLayoutを使用して、親(ツールバー)の全身をカバーすることはできますか? 可能であれば、今直面している問題をどのように解決するか?

いずれかの答えと提案は賞賛されます。

答えて

2

これはバージョン設計支援ライブラリの24.0.0に導入された新しい材料設計仕様の一部です。 ツールバーウィジェットに次のプロパティを追加することで余分なスペースを削除することができます。

app:contentInsetStartWithNavigation="0dp" 

app:contentInsetStart="0dp"が彼の問題を解決追加コメントで@kocusことで言及したように、私はもともと問題を誤解しました。

+1

でも、このプロパティは私にとっては機能しません。このプロパティを追加する前に何をすべきですか? – Sadhon

+0

'app:'名前空間にエラーがありますか? –

+0

いいえ、間違いはありません.. – Sadhon

関連する問題