2017-09-15 2 views
-1

ich in meiner Android app will eine Aktionsleiste, wie ich sie in meinem iOS-App haben:Android individuelle Back-Button mit Text

.

Leider weiß ich nicht, wie man die Zurück-Taste nur mit Text und wie man den Titel in der Mitte bewegt. Dies wäre für die gesamte Anwendung, nicht nur für ein Layout.

Könnte mir bitte jemand helfen?

+0

hey Sie schaffen für das & schließen es ein Layout kann erstellen in Ihrer Aktivität, wenn Sie es brauchen, besuchen Sie und laden Sie meine Beispiel-Demo Sie erhalten https://github.com/mukeshlokare/SampleAndroidApp –

Antwort

0

Ich habe eine einfache Lösung gefunden gewünscht.

Sie haben nur ein Layout für eine benutzerdefinierte ActionBar custom_action_bar_layout.xml

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="50dp" 
    android:background="@color/colorPrimary"> 

    <TextView 
     android:id="@+id/title_text" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_centerInParent="true" 
     android:textAllCaps="true" 
     android:text="name" 
     android:textAppearance="?android:attr/textAppearanceLarge" 
     android:textColor="#fff" 
     android:textStyle="bold" /> 

    <TextView 
     android:id="@+id/back_button" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_alignParentStart="true" 
     android:layout_centerVertical="true" 
     android:textAppearance="?android:attr/textAppearanceMedium" 
     android:textColor="#fff" 
     android:text="Back"/> 

</RelativeLayout> 

und dann in Ihrem ExampleActivity

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_edit_date); 

    ActionBar mActionBar = getSupportActionBar(); 
    mActionBar.setDisplayShowHomeEnabled(false); 
    mActionBar.setDisplayShowTitleEnabled(false); 
    LayoutInflater mInflater = LayoutInflater.from(this); 

    View mCustomView = mInflater.inflate(R.layout.custom_action_bar_layout, null); 
    TextView title = (TextView) mCustomView.findViewById(R.id.title_text); 
    title.setText("Title"); 
    TextView backButton = (TextView) mCustomView.findViewById(R.id.back_button); 
    backButton.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 
      finish(); 
     } 
    }); 

    mActionBar.setCustomView(mCustomView); 
    mActionBar.setDisplayShowCustomEnabled(true); 
} 

and this is the result.

0

Sie können ein custom_toolbar.xml Layout & Design erstellen, was Sie erreichen wollen,

Siehe mein Paradigma

<?xml version="1.0" encoding="utf-8"?> 
<android.support.design.widget.AppBarLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/app_bar" 
    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="wrap_content" 
     android:background="@color/colorAccent"> 

     <RelativeLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:gravity="center"> 

      <TextView 
       android:id="@+id/txt_back" 
       style="@style/TextStyle" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:drawablePadding="0dp" 
       android:gravity="center_vertical" 
       android:text="Back" /> 

      <TextView 
       android:id="@+id/txt_name" 
       style="@style/TextStyle" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_centerVertical="true" 
       android:layout_marginRight="10dp" 
       android:layout_toLeftOf="@+id/txt_value" 
       android:layout_toRightOf="@+id/txt_back" 
       android:gravity="center" 
       android:text="Name" /> 

      <TextView 
       android:id="@+id/txt_value" 
       style="@style/TextStyle" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_alignParentRight="true" 
       android:layout_centerVertical="true" 
       android:layout_marginRight="10dp" 
       android:gravity="end" 
       android:text="test" /> 
     </RelativeLayout> 
    </android.support.v7.widget.Toolbar> 
</android.support.design.widget.AppBarLayout> 

Jetzt können Sie dieses Layout sind in Ihrem example_activity.xml

<include 
    android:id="@+id/toolbar" 
    layout="@layout/custom_toolbar" 
    android:layout_width="0dp" 
    android:layout_height="wrap_content" 
    app:layout_constraintStart_toStartOf="parent" 
    app:layout_constraintEnd_toEndOf="parent" 
    app:layout_constraintTop_toTopOf="parent" /> 

& Siehe Ausgabe

enter image description here

+0

ok vielen dank, aber wie kann ich dann den click der taste auslösen oder den titel setzen? @mukesh_lokare –

Verwandte Themen