Android View 拖動 插入

2021-07-30 08:35:36 字數 1688 閱讀 4349

view 拖動&插入

即: 支援 拖**標 然後把之插入 2個view 之間

為了降低難度 選用了若干imageview 放入viewgroup : vertical linearlayout

[** 步驟]

1. 定義布局:main.xml :

< ?xml version="1.0" encoding="utf-8"?>

< linearlayout xmlns:android=""

android:orientation="vertical"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:id="@+id/linear"

>

< imagebutton

android:layout_width="100dip"

android:layout_height="100dip"

android:src="@drawable/beijing1_b"/>

< imagebutton

android:layout_width="100dip"

android:layout_height="100dip"

android:src="@drawable/beijing2_b"/>

< imagebutton

android:layout_width="100dip"

android:layout_height="100dip"

android:src="@drawable/beijing3_b"/>

< imagebutton

android:layout_width="100dip"

android:layout_height="100dip"

android:src="@drawable/beijing3_b"/>

< /linearlayout>

2. 變數初始化

llayout = (linearlayout)findviewbyid(r.id.linear);

3. 定義ontouchlistener 用於監聽所有動作 並註冊linearlayour的所有view 實現為:

touchlistener = new ontouchlistener()

return false;

}  };

//to listener all imageview

for(int i=0;i< p>

imageview iv = (imageview)llayout.getchildat(i);

if(iv !=null)

else

}

4. getlocation(view) 用於: 根據目標view 判斷待插入的位置 即:哪2個相鄰imageview 之間 實現為:

public int getlocation(view v)

else

}  }

//otherwise return last location

return llayout.getchildcount()-1;

}

android view介紹 隨心

activity是android程式的顯示層,每乙個顯示視窗都是乙個activity 可是activity本身無法顯示在螢幕上,我們可以把它理解成是乙個抽象層,乙個殼子 就譬如乙個jsp頁面,它本身並沒有顯示出來任何東西,負責顯示的是他生成的html標籤。那麼android裡誰才是真正顯示出來的部分...

android view繪製過程

簡單描述可以解釋為 計算大小 measure 布局座標計算 layout 繪製到螢幕 draw 下面看看每一步的動作到底是什麼,第一步 當activity啟動的時候,觸發初始化view過程的是由window物件的decorview呼叫view 具體怎樣從xml中讀取是用layoutinflater....

android view怎樣重新整理

兩種方式重新整理 主線程可以直接呼叫invalidate 方法重新整理 子執行緒可以直接呼叫postinvalidate 方法重新整理。api的描述是這樣的 invalidatethe whole view.if the view is visible,ondraw canvas will be c...