我希望实现一个在单击按钮时打开的对话框。它应该看起来像出现在 android 手机和 twitter 应用程序中的流行快速操作对话框。但我应该能够将它用作容器,以便我可以添加其他元素,例如按钮、下拉列表、文本框等。
当然,它需要弹出按钮,并带有一个指向调用此对话框的按钮的箭头。任何其他类似的示例或只是对我应该实现和使用的内容的简单描述也应该有所帮助。
我希望实现一个在单击按钮时打开的对话框。它应该看起来像出现在 android 手机和 twitter 应用程序中的流行快速操作对话框。但我应该能够将它用作容器,以便我可以添加其他元素,例如按钮、下拉列表、文本框等。
当然,它需要弹出按钮,并带有一个指向调用此对话框的按钮的箭头。任何其他类似的示例或只是对我应该实现和使用的内容的简单描述也应该有所帮助。
您可以使用的示例很少,以下是其中一些示例:
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;
公共无效显示(){
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);
}
}
}
希望你会发现这很有用。干杯
查看以下开源快速操作对话框 https://github.com/lorensiuswlt/NewQuickAction3D
这是 ios 的另一个示例项目,例如 pop over view