编辑:我决定让此应用仅与API 11及更高版本兼容。但是,向上按钮仍然无法正常工作。
我需要在我的Android应用中使用向上按钮功能,我想让它与从API级别11(版本3.0)开始的所有版本兼容。现在,我从版本3.2中的活动导航没有问题。但现在我在Android 4.2上进行测试并且它没有工作;它只是立即退出应用程序。有人能告诉我我错过了什么吗?
我在AndroidManifest.xml中定义了父活动:
...
<activity
android:name="net.example.myapp.MainActivity"
android:label="@string/app_name" >
</activity>
<activity
android:name="net.example.myapp.DetailActivity"
android:parentActivityName="net.example.myapp.MainActivity"
android:label="@string/app_name"
android:icon="@drawable/ic_launcher" >
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="net.example.myapp.MainActivity" />
</activity>
...
在我的孩子活动中:
import java.util.ArrayList;
import java.util.List;
import android.support.v4.app.NavUtils;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.Spinner;
import android.widget.Toast;
import android.widget.AdapterView.OnItemClickListener;
...
@Override
protected void onCreate(Bundle savedInstanceState) {
getActionBar().setDisplayHomeAsUpEnabled(true);
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_detail);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
// Respond to the action bar's Up/Home button
case android.R.id.home:
NavUtils.navigateUpFromSameTask(this);
return true;
}
return super.onOptionsItemSelected(item);
}
...
答案 0 :(得分:0)
Providing Up Navigation training完成了实现向后兼容的Up功能所需的所有步骤。
由于Action Bar仅在API 11中添加(并且自那时以来已经多次更改,最近更改为API 21的Material Design),您可以使用AppCompat提供通过API兼容的一致Action Bar 7,为您提供与最新设备相同的Material Design Action Bar。