我一直在尝试我制作的应用程序,操作栏适用于我的4.4版本。操作栏不会显示在4.3版本上。
这就是我正在使用的:
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="21" />
这是我的活动代码:
private static final int ABOUTUS = Menu.FIRST + 1;
private static final int CLOSE = Menu.FIRST + 2;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
menu.add(Menu.NONE, ABOUTUS, Menu.NONE, "About Us");
menu.add(Menu.NONE, CLOSE, Menu.NONE, "Exit");
return (super.onCreateOptionsMenu(menu));
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case ABOUTUS:
Intent intent = new Intent(this, AboutUs.class);
startActivity(intent);
break;
case CLOSE:
finish();
break;
default:
finish();
break;
}
return (super.onOptionsItemSelected(item));
}
}
我在工作区中导入 appcompat-v7 。
不确定为什么会这样,但收到的任何帮助都会非常感激。
答案 0 :(得分:2)
首先,在使用AppCompat ActionBar的活动中,您需要导入必要的类。
import android.support.v7.app.ActionBarActivity;
import android.support.v4.app.Fragment;
import android.support.v7.app.ActionBar; //if you need to customize the ActionBar
其次,每个活动必须扩展ActionBarActivity类。
//say
public class MainActivity extends ActionBarActivity {
第三,您需要在各种值 / values-v11 文件夹中的 styles.xml 文件中声明正确的主题。< / p>
<style name="AppBaseTheme" parent="Theme.AppCompat.Light">
<!--
Theme customizations available in newer API levels can go in
res/values-vXX/styles.xml, while customizations related to
backward-compatibility can go here.
-->
</style>
values-v14 文件夹中的 styles.xml :
<style name="AppBaseTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- API 14 theme customizations can go here. -->
</style>
如果您已经以这种方式完成了任务,那么我想添加使用 New - &gt;创建的基本模板。其他 - &gt; Android - &gt; Android应用程序项目选项[在Eclipse / ADT中]并设置android:minSdkVersion =&#34; 8&#34;适用于Android 4.3在模拟器和设备上。我已对此进行了测试,并建议您将此作为参考。