如何在Android中设计此组件

时间:2019-06-28 09:47:27

标签: android android-layout design-patterns

如何在Android中设计组件,例如下图所示,当单击“选择会话”按钮时,下面将显示一个填写的表单,如果再次单击,该表单将消失吗?

单击组件时,我仅能弹出一个对话框,但是,我要使组件像显示在图像中一样显示在组件的正下方。

下面是此类组件外观的链接。

欢迎您使用所有链接,教程或建议!

1 个答案:

答案 0 :(得分:1)

从评论中我得知,当您单击某个项目但位于该位置时,您想显示一个弹出窗口。 以下代码示例将有所帮助。当您单击文本视图时,它将在我们在视图中具有文本视图的位置显示一个弹出窗口 希望会有所帮助。

  textView.setOnTouchListener(new View.OnTouchListener() {
        @Override
        public boolean onTouch(View v, MotionEvent event) {
            if (event.getAction() == MotionEvent.ACTION_DOWN){
              //  textView.setText("Touch coordinates : " +
              //          String.valueOf(event.getX()) + "x" + String.valueOf(event.getY()));
                showDialog(event.getX(),event.getY());
            }
            return true;
        }
    });
}
public void showDialog(float x, float y)
{

    Dialog dialog;
    AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
    dialog = builder.create();
    dialog.setTitle("my dialog");
    dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
    WindowManager.LayoutParams wmlp = dialog.getWindow().getAttributes();
    //wmlp.gravity = Gravity.TOP | Gravity.LEFT;
    wmlp.x = (int) x;   //x position
    wmlp.y = (int) y;   //y position
    dialog.show();
}

我得到了什么,弹出窗口在中间,因为文本视图也在中间 Example