Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/204.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android ActionBarActivity和setActionView不工作_Android_Android Actionbar_Android Menu_Android Actionbaractivity - Fatal编程技术网

Android ActionBarActivity和setActionView不工作

Android ActionBarActivity和setActionView不工作,android,android-actionbar,android-menu,android-actionbaractivity,Android,Android Actionbar,Android Menu,Android Actionbaractivity,我试图让一个进度表在ActionBarActivity中工作,这样我就可以在运行api 7的设备上使用片段 正常活动的结果,这就是我想要的结果: 结果为actionbaractivity: 我的代码: //The progress bar only works with a normal activity but not with an ActionBarActivity public class TestActivity extends Activity { //now produces

我试图让一个进度表在ActionBarActivity中工作,这样我就可以在运行api 7的设备上使用片段

正常活动的结果,这就是我想要的结果:

结果为actionbaractivity:

我的代码:

//The progress bar only works with a normal activity but not with an ActionBarActivity
public class TestActivity extends Activity { //now produces image 1, replace this with a ActionBarActivity and it produces image 2.

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


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

        //Code below is from http://stackoverflow.com/questions/20402912/android-actionbar-compatibility-menuitem-setactionviewview
        MenuItem item = menu.findItem(R.id.menu_refresh);
        MenuItemCompat.setActionView(item, R.layout.actionbar_indeterminate_progress);

        return true;
    }
}
activity_register.xml:

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/container"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".RegisterActivity"
    tools:ignore="MergeRootFrame" />

但是上面的代码都不能工作

我做错了什么


编辑:如何将问题标记为已回答?

如果在菜单项上添加标题,并将
ifRoom
更改为
始终
会发生什么?请尝试以下答案:-希望如此helps@Fllo谢谢,成功了。
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
         android:layout_height="wrap_content"
         android:layout_width="wrap_content">
<ProgressBar android:layout_width="32dp"
             android:layout_height="32dp"
             android:layout_gravity="center"/>
</FrameLayout>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/menu_refresh"
      android:checkable="false"
      android:orderInCategory="1"
      android:showAsAction="ifRoom"
      android:actionLayout="@layout/actionbar_indeterminate_progress"/>
<item android:id="@+id/menu_scan"
      android:title="@string/menu_scan"
      android:orderInCategory="100"
      android:showAsAction="ifRoom|withText"/>
<item android:id="@+id/menu_stop"
      android:title="@string/menu_stop"
      android:orderInCategory="101"
      android:showAsAction="ifRoom|withText"/>
</menu>
 SupportMenuItem item = (SupportMenuItem) menu.findItem(R.id.menu_refresh);
 MenuItemCompat.setActionView(item, R.layout.actionbar_indeterminate_progress);
 SupportMenuItem item = (SupportMenuItem) menu.findItem(R.id.menu_refresh);
 item.setActionView(R.layout.actionbar_indeterminate_progress);