Android:快速操作,如对话框窗口,以显示其他组件

时间:2013-07-15 11:35:23

标签: android quickaction

我希望实现一个单击按钮时打开的对话框。它应该看起来像Android手机和Twitter应用程序中出现的流行的快速操作对话框。但我应该能够将它用作容器,以便我可以添加其他元素,如按钮,下拉菜单,文本框等。

当然,它需要弹出按钮,箭头指向调用此对话框的按钮。任何其他类似的例子或只是我应该实现和使用的准确描述也应该有所帮助。

2 个答案:

答案 0 :(得分:2)

您可以使用的示例很少,以下是其中一些示例:

http://shardulprabhu.blogspot.ro/2012/08/blog-post_29.html

https://github.com/lorensiuswlt/NewQuickAction

https://github.com/lorensiuswlt/NewQuickAction3D

在我看来,第一个链接示例很容易理解和修改。 另一方面,如果你可以创建一个自定义的PopupWindow并添加箭头,这里有一个简单的弹出窗口示例。

  public class MyPopup extends PopupWindow{

  public MyPopup (Context context) {
    super(context);
    this.context = context;

public void show(){

    if (context == null)
        return;

    LayoutInflater layoutInflater = (LayoutInflater) context
            .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    layout = layoutInflater.inflate(R.layout.mypopup_layout, null);

    Display display = ((Activity) context).getWindowManager()
            .getDefaultDisplay();
    Point size = new Point();
    display.getSize(size);
    int width = size.x;
    int height = size.y;


    setContentView(layout);
    setWidth(width / 4);
    setHeight(height / 2);
    setFocusable(true);

    /**
     * Clear the default translucent background
     */
    setBackgroundDrawable(new BitmapDrawable(context.getResources()));

    init();

    /**
     * Displaying the pop-up at the specified location, + offsets.
     */
    showAtLocation(layout, Gravity.NO_GRAVITY, xpos, ypos);

}


}
}

希望你会发现这很有用。 干杯

答案 1 :(得分:1)

查看以下开源快速操作对话框 https://github.com/lorensiuswlt/NewQuickAction3D

这是ios的另一个示例项目,例如pop over view

https://github.com/lupidan/PopoverView