Android-把按钮放在视图的顶部

时间:2013-07-06 22:14:57

标签: android view android-activity

我正在创建一个用户可以绘制的应用,然后更改它们绘制方式的“设置”。在DrawingActivity类的onCreate中,我将setContentView作为我创建的类,称为DrawingView,它扩展了View。我想在DrawingView上放置一个按钮,但我无法弄清楚如何。这是DrawingActivity类。

public class DrawingActivity extends Activity {

DrawingView dv ;   

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    dv = new DrawingView(this);
    setContentView(dv);

}

2 个答案:

答案 0 :(得分:0)

RelativeLayout允许将视图置于彼此之上。您可以使用DrawingViewandroid:layout_width="match_parent"android:layout_height="match_parent"添加到布局中,然后添加具有适当定位属性的按钮。这是达到你想要的一种方式,我相信还有其他方法。

答案 1 :(得分:0)

如果您想在ActionBar上放置一个图标而不是一个按钮,我建议您检查并下载ActionBarSherlock库,以避免兼容性问题并使您的工作变得轻松。 例如,如果您已下载并安装了SherlockActionBar,则应遵循以下步骤:

  1. 从SherlockActivity而不是Activity:

    扩展您的活动

    
    public class DrawingActivity extends SherlockActivity {...your code}
    

  2. 用res / drawable目录上的图标替换“ic_action_trash”(drawable-hdpi,drawable-ldpi,...)

    1. 在res / menu文件夹上创建一个xml文件,名为menu_main.xml(例如)
    2. enter image description here

      1. 覆盖DrawingActivity类中OnCreate方法下方的onCreateOptionsMenu和onOptionsItemSelected方法,如下所示:

        
        @Override
            public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
                inflater.inflate(R.menu.menu_main, menu);
            }

        @Override
        public boolean onOptionsItemSelected(MenuItem item) {
            if (item.getItemId() == R.id.delete_events)
                deleteEvent();
            return true;
        }
        

      2. @Override public boolean onOptionsItemSelected(MenuItem item) { if (item.getItemId() == R.id.delete_events) deleteEvent(); return true; }
        
        
        

        And here is the result:

        enter image description here

        However, to check your requirements, I think you should change the methods above like this:

        当您点击顶部图标时,您会看到: enter image description here

        希望这适合你!