Android 工具栏后退箭头不可点击

use*_*538 3 android android-layout

我已经尝试了一切尝试让我的后退箭头在我的工具栏上工作,但我没有成功我试过覆盖onOptionsItemSelected 我也试过这个线程上的建议向上导航(操作栏的后退箭头)不是为片段工作,但没有成功。我也在处理片段。

注册活动

public class RegisterActivity extends AppCompatActivity implements View.OnClickListener {

private Toolbar toolbar;

@Override
public void onCreate(Bundle savedInstanceState){
    super.onCreate(savedInstanceState);
    //setContentView(R.layout.activity_register);
    ButterKnife.bind(this);

    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
    setSupportActionBar(toolbar);
    getSupportActionBar().setDisplayHomeAsUpEnabled(true);
    getSupportActionBar().setDisplayShowHomeEnabled(true);
    getSupportActionBar().setHomeButtonEnabled(true);
}

@Override
public void onClick(View view) {
    switch (view.getId()) {
        case ( R.id.button_accept_tos ) :
            /*
            Fragment inputUserFragment = new AcceptAgreementFragment();
            FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
            transaction.setCustomAnimations(android.R.animator.fade_in, android.R.animator.fade_out);
            transaction.replace(R.id.main_activity, inputUserFragment);
            transaction.addToBackStack(null);
            transaction.commit();
            */
            break;
    }
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
        case android.R.id.home:
            onBackPressed();
            return true;
        default:
            return super.onOptionsItemSelected(item);
    }
}
Run Code Online (Sandbox Code Playgroud)

显现

 <application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">
    <activity android:name=".activity.MainActivity"
        android:screenOrientation="portrait">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity android:name=".activity.RegisterActivity"
        android:windowSoftInputMode="adjustPan|adjustResize"
        android:screenOrientation="portrait">
    </activity>

    <meta-data
        android:name="android.support.PARENT_ACTIVITY"
        android:value=".activity.MainActivity"
        />

</application>
Run Code Online (Sandbox Code Playgroud)

和我的activity_register xml

    <?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:background="@color/ghostWhiteColor"
    android:fitsSystemWindows="true"
    tools:context="com.dae.market.dav.lux.activity.RegisterActivity">


    <android.support.v7.widget.Toolbar
        android:id="@+id/toolbar"
        android:minHeight="?attr/actionBarSize"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:titleTextColor="@android:color/white"
        app:navigationIcon="@drawable/ic_arrow_back_white_24dp"
        android:background="?attr/colorPrimary">

        <TextView
            android:id="@+id/toolbar_title"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="test"
            android:textColor="@android:color/white"
            style="@style/TextAppearance.AppCompat.Widget.ActionBar.Title"
            android:layout_gravity="center"
            />

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



    <!--wizard>-->
    <FrameLayout
        android:id="@+id/fragment_register"
        android:layout_width="match_parent"
        android:layout_height="match_parent"/>

</android.support.design.widget.CoordinatorLayout>
Run Code Online (Sandbox Code Playgroud)

Arn*_*own 5

尝试这个...

在您的活动中使用此主题(清单)

<style name="AppTheme.NoActionBar">
        <item name="windowActionBar">false</item>
        <item name="windowNoTitle">true</item>
</style>
Run Code Online (Sandbox Code Playgroud)

在您的活动中

Toolbar toolbar;
Run Code Online (Sandbox Code Playgroud)

//在创建

toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);
        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
Run Code Online (Sandbox Code Playgroud)

然后为工具栏调用 setNavigationOnClickListener

toolbar.setNavigationOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                onBackPressed();
            }
        });
Run Code Online (Sandbox Code Playgroud)

现在检查 onClick on Back 按钮...