从应用程序图标作为向上按钮返回ActionBarActivity的片段?

时间:2014-01-10 21:07:54

标签: java android listview android-fragments

我有这个GUI来选择我在应用程序中的一些片段。当我选择“Empleados”选项时,Fragment中的ListView如下所示:

    <activity
        android:name=".actividades.admin.InicioAdmin"
        android:theme="@style/AppTheme">
    </activity>

Navigation Drawer

这是我将片段理论化的开关。

    Fragment fragment = null;

    switch (posicion) {
        case 0:
            fragment = new HomeFragment();
            break;
        case 1:
            fragment = new EmpleadoFragment();
            break;
        case 3:
            UsuarioFunciones.cerrarSesion(context);
            Intent inicio = new Intent(getApplicationContext(), Login.class);
            inicio.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
            startActivity(inicio);
            finish();
            Toast.makeText(context,"Sesión finalizada",Toast.LENGTH_LONG).show();
            break;
        default:
            break;
    }

    if (fragment != null) {
        getSupportFragmentManager().beginTransaction().replace(R.id.content_frame,
                fragment).commit();
        listView.setItemChecked(posicion, true);
        listView.setSelection(posicion);
        setTitle(navMenuTitulos[posicion]);
        drawerLayout.closeDrawer(listView);
    }

EmpleadoFragment.java(扩展片段)

Lista

选择员工时,会加载一个ActionBarActivity,您可以为该员工执行某些功能。

我的问题是如何运行导航按钮重新打开片段在哪里是ListView?。

Back Button

当我按下物理“后退”按钮时,ListView会重新打开,但App Icon无法正常工作。

上面的ActionBarActivity的AndroidManifest.xml(DetalleEmpleado.java):

<activity
    android:name=".actividades.admin.DetalleEmpleado"
    android:label="@string/actividad_detalle_empleado"
    android:theme="@style/AppTheme"
    android:parentActivityName=".SampleParentActivity">
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value=".SampleParentActivity"/>
</activity>

1 个答案:

答案 0 :(得分:2)

您必须将代码放回ActionBarActivity的onOptionsItemSelected中。 Here您可以找到更多信息。

@Override
 public boolean onOptionsItemSelected(MenuItem item) {
     switch (item.getItemId()) {

        case android.R.id.home:
            //Close current activity
            finish();
        return true;    

         default:
             return super.onOptionsItemSelected(item);
     }
}