我有一个可滚动的GridView,其中的项目之间有相当大的空白空间。对于网格中的一些对象,我想添加从一个到另一个的箭头图像
参考我的意思,想想魔兽世界天赋树(http://calculators.iradei.eu/talents/mage)。你会看到一些人才有箭头从一个项目到另一个项目。
我正在处理的布局只包含framelayout中的gridview,没有别的
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<GridView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:numColumns="4"
android:scrollbars="none"
android:id="@+id/talent_tree_grid_view">
</GridView>
</FrameLayout>
我正在尝试在代码中添加这些ImageView,因为我认为没有任何方法可以将此逻辑添加到GridView的适配器中。
我已经尝试将它们作为父FrameLayout的子项添加,基于GridView项的x和y坐标,这样可行,但滚动GridView时,箭头也不会滚动
我也尝试直接添加它们作为GridView的子项,但它不支持此行为(它抛出java.lang.UnsupportedOperationException)
对于如何在gridview项目之间添加这些图像视图有什么想法吗?
答案 0 :(得分:5)
这听起来非常类似于Romain Guy的“Shelves”应用程序,其中使用了自定义GridView
并且书架的背景图像滚动。看看项目here。可以在源代码中的文件ShelvesView.java
中找到自定义GridView的源代码。 Guy Romain的快速介绍是here;
对于箭头,您可能需要考虑9-patch drawable。
我已经对上述方法进行了一些调查,并提供了一个基于的示例应用程序 Google的Hello GridView example。
采用这个示例应用程序,我已经构建了一个自定义GridView(DogsGridView.java)并将照片连接到空单元格,类似于您的魔兽世界天赋树的示例。我只使用简单的线条,但可以修改类以使用箭头或其他图形连接单元格。
这是一个带有连接线的quick video。这是another,带有9个补丁箭头。
可以找到项目来源here。