我正在尝试实现类似于facebook / twitter功能的东西,当你添加" @"时会显示一个用户列表。标志。我的问题是我不知道如何实现这种弹出或浮动视图。是对话还是片段?
答案 0 :(得分:1)
在android中有一些叫做ListPopUpWindow的东西可以解决你的问题。我在下面给出了一个例子,比如你如何启动它。创建自己的listadapter和行xml文件。然后将它传递给popup.setAdapter,就像你如何处理android中的普通列表一样。
private void initiatePopupWindow(View anchor) {
try {
Display display = ((WindowManager) getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay();
ListPopupWindow popup = new ListPopupWindow(this);
popup.setAnchorView(anchor);
popup.setWidth((int) (display.getWidth()/(1.5)));
popup.setAdapter(new CustomAdapterForService(getApplicationContext(), R.layout.rowforservice, listCity));
popup.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View view, int position, long id3) {
//do what you need to do when you click on a popup list item
}
});
popup.show();
} catch (Exception e) {
e.printStackTrace();
}
}
最后,您需要调用它,然后使用Anchor调用它。锚点是视图,可以是按钮或图像,也可以是您需要弹出列表的位置。就像这样。
initiatePopupWindow(yourOwnView)
这对我有用。如有任何问题请随时提出。感谢。