2013-02-27 41 views
0

我试图建立一个动作条菜单的应用程序,但是当我在模拟器lanuch它下面的消息表明:横向菜单的应用程序并不运行

不幸的是,MAPA已经停止。

下面是代码:

主要活动:

import android.os.Bundle; 
import android.app.Activity; 
import android.app.Fragment; 
import android.app.FragmentTransaction; 
import android.view.Menu; 

public class Mapapp extends Activity { 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_mapapp); 



} 


@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    // Inflate the menu; this adds items to the action bar if it is present. 
    getMenuInflater().inflate(R.menu.menuopc, menu); 
    return true; 
} 

}

menuopc.xml

<?xml version="1.0" encoding="utf-8"?> 
<menu xmlns:android="http://schemas.android.com/apk/res/android" > 
    <item 
     android:id="@+id/mapa" 
     android:title="@string/t1" 
     android:orderInCategory="1" 
     android:showAsAction="always|ifRoom" /> 

    <item 
     android:id="@+id/lista" 
     android:title="@string/t2" 
     android:orderInCategory="2" 
     android:showAsAction="always|ifRoom" /> 

</menu> 

activity_mapapp.xml

<RelativeLayout 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" 
android:paddingBottom="@dimen/activity_vertical_margin" 
android:paddingLeft="@dimen/activity_horizontal_margin" 
android:paddingRight="@dimen/activity_horizontal_margin" 
android:paddingTop="@dimen/activity_vertical_margin" 
tools:context=".Mapapp" > 

</RelativeLayout> 

任何想法有什么不对?

谢谢。

+0

在什么Android版本上运行这个? LogCat打印什么? – Ahmad 2013-02-27 20:07:25

+0

我正在运行Android 4版本。 – axmug 2013-02-27 20:10:38

+0

和你的LogCat? – Ahmad 2013-02-27 20:11:22

回答

-1

您不能使用ifRoom并始终在相同的项目中。如果操作栏中没有足够的空间来显示操作项,设备不知道该如何操作。

ifRoom - 只有将该项目放置在操作栏中(如果有空间的话)。

总是 - 始终将此项目放置在操作栏中。避免使用此项,除非项目始终显示在操作栏中至关重要。将多个项目设置为始终显示为操作项目可能会导致它们与操作栏中的其他UI重叠。

参考:http://developer.android.com/guide/topics/resources/menu-resource.html