我正在为包含片段的应用程序使用导航抽屉。我也在使用动作按钮。但是,当我使用抽屉更改活动时,所有活动上都带有操作按钮。我只想要其中一个片段。这是我的代码
package com.colourity.snatsh;
import com.colourity.snatsh.R;
import java.util.ArrayList;
import com.colourity.snatsh.adapter.NavDrawerListAdapter;
import com.colourity.snatsh.model.NavDrawerItem;
import android.app.Activity;
import android.app.Fragment;
import android.app.FragmentManager;
import android.content.res.Configuration;
import android.content.res.TypedArray;
import android.os.Bundle;
import android.support.v4.app.ActionBarDrawerToggle;
import android.support.v4.widget.DrawerLayout;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.ListView;
public class HomeFragment extends Fragment {
public HomeFragment(){}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_home, container, false);
return rootView;
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu items for use in the action bar
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.main, menu);
return super.onCreateOptionsMenu(menu);
}
}
这些是错误。
The method onCreateOptionsMenu(Menu) of type HomeFragment must override or implement a supertype method HomeFragment.java
The method getMenuInflater() is undefined for the type HomeFragment HomeFragment.java /Snatsh/src/com/colourity/snatsh
The method onCreateOptionsMenu(Menu, MenuInflater) in the type Fragment is not applicable for the arguments (Menu)
当我在
MainActivity
中执行此操作时,它可以正常工作,但是当我将其移至HomeFragment
时,将显示错误。 最佳答案
但是当我将其移至HomeFragment时,会显示错误。
您需要确保使用的是与onCreateoptionsMenu()
类相对应的Fragment
签名。您可以在Fragment
中删除此方法,然后开始键入其名称,然后使用IDE的自动完成功能来使用正确的方法签名。
关于java - 1个 Activity 上有操作按钮?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21961725/