Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/373.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
Java 如何实现没有选项卡的自定义菜单?_Java_Android_Xml_Menu - Fatal编程技术网

Java 如何实现没有选项卡的自定义菜单?

Java 如何实现没有选项卡的自定义菜单?,java,android,xml,menu,Java,Android,Xml,Menu,我有一个菜单,上面有链接,我想出现在我的所有活动中。显然,我可以在我的每个活动布局中包含菜单的xml,并在每个活动中为我的侦听器编写代码,但我不希望对我的所有15个左右的活动都这样做 我尝试创建和扩展一个自定义的基本活动,但没有成功,因为我无法为每个活动设置不同的布局 在不使用选项卡的情况下实现这样的菜单的最佳方法是什么?除了使用片段或Actionbar(Sherlock)之外,您还可以这样做: public class MenuActivity extends Activity { p

我有一个菜单,上面有链接,我想出现在我的所有活动中。显然,我可以在我的每个活动布局中包含菜单的xml,并在每个活动中为我的侦听器编写代码,但我不希望对我的所有15个左右的活动都这样做

我尝试创建和扩展一个自定义的基本活动,但没有成功,因为我无法为每个活动设置不同的布局


在不使用选项卡的情况下实现这样的菜单的最佳方法是什么?

除了使用片段或Actionbar(Sherlock)之外,您还可以这样做:

public class MenuActivity extends Activity {
    private FrameLayout mContainer;
    @Override
    public void onCreate(Bundle icicle) {
        super.onCreate(icicle);
        // Layout that has menu on top and an empty
        // FrameLayout below
        setContentView(R.layout.main);
        mContainer = (FrameLayout) findViewById(R.id.frame_layout);
        // add click listeners to menu and let them call
        // onMenuItemClicked() or whatever you wish to do
    }

    @Override
    public void setContentView(View view) {
        mContainer.removeAllViews();
        mContainer.addView(view);
    }

    protected void onMenuItemClicked(){ /* or abstract */ }
}
设置一个布局,其中包含顶部的菜单和下方的空白内容(例如
FrameLayout
),并覆盖
setContentView
,以便在空白布局中设置内容


然后以本课程为基础,照常使用。可能会添加菜单按钮处理。

除了使用片段或Actionbar(Sherlock)之外,您还可以这样做:

public class MenuActivity extends Activity {
    private FrameLayout mContainer;
    @Override
    public void onCreate(Bundle icicle) {
        super.onCreate(icicle);
        // Layout that has menu on top and an empty
        // FrameLayout below
        setContentView(R.layout.main);
        mContainer = (FrameLayout) findViewById(R.id.frame_layout);
        // add click listeners to menu and let them call
        // onMenuItemClicked() or whatever you wish to do
    }

    @Override
    public void setContentView(View view) {
        mContainer.removeAllViews();
        mContainer.addView(view);
    }

    protected void onMenuItemClicked(){ /* or abstract */ }
}
设置一个布局,其中包含顶部的菜单和下方的空白内容(例如
FrameLayout
),并覆盖
setContentView
,以便在空白布局中设置内容


然后以本课程为基础,照常使用。可能会添加菜单按钮处理。

我会尝试子类化视图而不是活动。我会尝试子类化视图而不是活动。