7

我有一个带有“添加”和“删除”按钮的活动。

“添加按钮”使视图膨胀,“删除按钮”删除选定的视图。

当我使用“添加按钮”为视图充气时,它会自动绘制在任何以前充气的视图下方。

我想让用户可以上下移动每个膨胀的视图,这样他就可以改变它们在屏幕上显示的顺序(以拖放的效果)

+---------------------+     +---------------------+
| +-----------------+ |     | +-----------------+ | 
| |      View 1     | |     | |      View 2     | |  
| +-----------------+ |     | +-----------------+ |
|                     | --> |                     |
| +-----------------+ |     | +-----------------+ |
| |      View 2     | |     | |      View 1     | |
| +-----------------+ |     | +-----------------+ |  
+---------------------+     +---------------------+

是否可以指定每个视图膨胀的“位置”?(例如,低于或高于当前选定的视图?)

如果没有,达到预期效果的最佳方法是什么?

(如果您认为可能有帮助,请随时询问任何代码)

4

1 回答 1

11

您的视图看起来像一个垂直的LinearLayout. 所以我建议你使用类似的东西:

View v = inflater.inflate(R.layout.XXXX, null);
yourLinearLayout.addView(v, INDEX, new LinearLayout.LayoutParams(...)

使用 INDEX(您需要以某种方式确定)您可以控制位置。LinearLayout是 ViewGroup 的子类,所以该方法是可用的。

文件:

于 2010-12-30T06:49:37.330 回答