我一直在尝试编写一个简单的应用程序来记录android。 我希望有一个"添加"按钮显示在主要活动的操作栏中。但是,它只显示为溢出。 我试过了
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/action_add"
android:icon="@drawable/ic_add"
android:title="@string/add"
android:showAsAction="always"></item>
</menu>
但我无法运行该应用程序,因为android studio告诉我
应该使用带有xmlns的appcompat库的app:showAsAction:app =&#34; http://schemas.android.com/apk/res-auto"
有什么想法吗?据我所知,我不是使用appcompat
编辑: java类:
public class NoteChoice extends Activity {
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.notechooser);
SQLiteDatabase db = openOrCreateDatabase("Notes", MODE_PRIVATE, null);
db.execSQL("CREATE TABLE IF NOT EXISTS Notes ( id INTEGER PRIMARY KEY AUTOINCREMENT, val VARCHAR )");
}
@Override
public boolean onCreateOptionsMenu(Menu menu){
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.notechooser_actions, menu);
return super.onCreateOptionsMenu(menu);
}
public boolean onOptionsItemSelected(MenuItem item){
switch(item.getItemId()){
case R.id.action_add:
onPause();
startActivity(new Intent("com.example.theorangeutan.notes.Create"));
return true;
default:
return super.onOptionsItemSelected(item);
}
}
}
styles.xml文件:
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="@android:style/Theme.Holo.Light">
<!-- Customize your theme here. -->
</style>
<style name="splash" parent="@android:style/Theme.Holo.Light.NoActionBar">
<!-- Customize your theme here. -->
</style>
答案 0 :(得分:0)
support-v7
被视为第三方库,因此通过support-v7引入的XML属性必须使用app
命名空间而不是android
命名空间,以便保证向后兼容v7。例如,android:showAsAction
仅适用于&gt; = SDK 11,而app:showAsAction
可用&gt; = SDK 7。
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item android:id="@+id/action_add"
android:icon="@drawable/ic_add"
android:title="@string/add"
app:showAsAction="always"></item>
</menu>