android的簡單自定義View 五子棋

2021-09-10 05:47:48 字數 1215 閱讀 2830

作為乙個android的初學者總是對任何事請都從滿好奇,最近看好多大佬的工程裡自定義view總是辣麼的帥氣,忍不住學習了一下下,以下為菜鳥級別大佬勿噴,寫的不好的還望指出,日後加以改進!

先說一下吧android的自定義view就是自己實現乙個類去繼承view,實現其中的方法,這裡面我最感興趣的就是ondraw方法了,因為你要的樣式都要在這裡面進實現,看一下效果圖吧:

emmmmmm。。。。大概就是介個樣子的,長得醜不要緊,能用就行,哈哈,畢竟只是簡單的了解一下嘛!

*protected void ondraw(canvas canvas) 

}for(int i = 0 ; i 這裡首先畫出了乙個棋盤,下的棋子就放在了乙個arraylist中,裡面放的是乙個個的map,分別放了x,y座標還有他的屬性(黑棋還是白棋),還有就是邊界的處理問題,很簡單我就不多說啦,

畢竟是下棋的這個控制項一定要是可以點的,不能只能看看那麼簡單

public boolean ontouchevent(motionevent event) else if(judgeleft() == true)

invalidate();

}if(abs(event.getrawy()-yy)>=30)else if(judgetop() == true)

invalidate();

}break;

case motionevent.action_up://鬆開

int i;

for( i = 0 ; i < list.size() ; i++)

}if(i == list.size())

if(deal.setpiont((x-pandingx)/size , (y-pandingy)/size , flag+1) == 2)

list.clear();

init();

}x = -100;

y = -100;

invalidate();

}break;

}return true;

}

大概就是介個樣子的,實現了手指落下,滑動,還有抬起動作的監聽,看上去有點亂,,,但是大概就是這麼個意思,裡面的deal類是我把已經下的棋子放到了乙個二維陣列中在裡面單獨處理,來判斷他們到底有沒有五子連珠,好啦大概就只有這些了!

Android開發實踐 自定義帶動畫的View

前面兩篇文章介紹了自定義view的onmeasure和onlayout原理,本文準備介紹自定義view的第三個關鍵部分,即ondraw 函式的過載。對於乙個自定義view來說,onmeasure只是用來計算view尺寸,ondraw 才是真正執行view的繪製,所以一般我們都需要重寫ondraw 函...

Android自定義控制項 自定義屬性

自定義屬性的過程 1.在res values資料夾中建立attrs的xml檔案。2.寫入標籤,定義子標籤attr,放入自定義屬性的名稱。format 可以用 來同時使用 1 reference 參考某一資源id 2 color 顏色值 3 boolean 布林值 4 dimension 尺寸值 帶有...

Android自定義View 自定義元件

自繪控制項也分兩種,自定義元件和自定義容器,自定義元件是繼承view類,自定義容器時繼承viewgrounp 今天主要分析下自定義元件 還是舉個例子來的實際些,假如我們要畫乙個最簡單的textview,首先想到的就是canvas.drawtext 方法,怎麼畫了?還是得一步一步來 1 寫乙個myte...