在我的xml文件中,我有5个linearLayout容器,其中包含每个容器的textview。现在我以编程方式实现了拖放功能,这就是我将它与每个布局相符的方式:
LinearLayout place1;
place1.setOnDragListener(new MyDragListener());
但是在这个Listener中,它将布局转换为视图:
class MyDragListener implements OnDragListener {
@Override
public boolean onDrag(View v, DragEvent event) {
//...
当我将textview拖放到另一个布局容器时,我可以获取此textview的视图对象以及我正在删除它的布局的视图对象。但是,我还需要获取textview的视图对象,其中包含我正在删除其他textview的布局。
为此,我尝试在布局视图上使用getChildAt(),但似乎此方法不适用于视图,仅适用于像LinearLayout这样的对象。
那么,我怎么能得到textview的视图对象呢?不得不说我需要这样做,因为当我做拖拽时,我需要展位textview的对象在它们之间交换文本,但如果有人提出更好的方法,我也会很感激建议。
答案 0 :(得分:1)
您可以使用ViewGroup并访问布局中的所有视图。
LayoutInflater inflater = LayoutInflater.from(context);
ViewGroup viewgroup = (ViewGroup)inflater.inflate(R.layout.yourLayout, null);
然后您可以使用getChildAt(index)