如何创建类似 Foursquare 兴趣选择屏幕的 gridview?

How to create a gridview like Foursquare interest selection screen?

我正在创建一个应用程序,它要求用户select 多个 兴趣。 我正在尝试创建一个类似于 Foursquare 兴趣 selection 类似于标签云 的屏幕,其中可以 select 编辑多个按钮来代表用户的兴趣。

我已经尝试创建一个 gridview,但我无法实现按钮换行到下一行的效果。

有没有办法通过 gridview 实现?有没有做这种事情的图书馆 UI?

您可以尝试使用 Gravity="center" 的 LinearLayout。如果这对您不起作用,那么也许可以编写您自己的自定义布局来执行线性布局、环绕和居中。

对于前者,请参见 this post 示例。

您正在寻找 FlowLayoutgravity="center_horizontal"。有几种可用的实现,其中很多是 GitHub 上的库项目。任你挑:)

ApmeM/android-flowlayout

blazsolar/FlowLayout

suanmiao/flowlayout

(降序 *s)

这个 repo 可能会对某人有所帮助。 https://github.com/Cutta/TagView

你好,还有另一个使用 custom Library 的例子,它的作用类似于 List GitHubLibrary TagLayout

  • 示例代码:-

mFlowLayout.setAdapter(new TagAdapter<String>(mVals) { @Override public View getView(FlowLayout parent, int position, String s) { TextView tv = (TextView) mInflater.inflate(R.layout.tv, mFlowLayout, false); tv.setText(s); return tv; } });

使用下面的代码你可以预先设置你想要的选择:-

mAdapter.setSelectedList(1,3,5,7,8,9);