首先第一步建乙個attrs 在value 裡面
<?xml version="1.0" encoding="utf-8"?>
自定義view布局
<?xml version="1.0" encoding="utf-8"?>
在實現的頁面
寫乙個class 類繼承型別
package com.bw.com.zhangzhouliu;
import android.content.context;
import android.content.res.typedarray;
import android.util.attributeset;
import android.view.layoutinflater;
import android.view.view;
import android.widget.button;
import android.widget.relativelayout;
import android.widget.textview;
public class casetopbar extends relativelayout
};*/
public casetopbar(context context)
public void setbtnlistener (leftandriagthlisten listener)
public inte***ce leftandriagthlisten
//設定左邊按鈕的可見性
public void setleftbutton(boolean flag)else
}//設定左邊按鈕的可見性
public void setrightbutton(boolean flag)else
}public casetopbar(context context, attributeset attrs)
}});
rigthbuton.setonclicklistener(new onclicklistener()
}});
typedarray = context.obtainstyledattributes(attrs, r.styleable.zhangtopbar);
int leftbackgroud = typedarray.getresourceid(r.styleable.zhangtopbar_zhang_leftbackgroud,0);
int rightbackgroud = typedarray.getresourceid(r.styleable.zhangtopbar_zhang_rightbackgroud, 0);
string titletext = typedarray.getstring(r.styleable.zhangtopbar_titletext);
int titlecolor = typedarray.getcolor(r.styleable.zhangtopbar_titlecolor, 0x38ad5a);
float titlesize = typedarray.getdimension(r.styleable.zhangtopbar_titlesize, 0);
//釋放資源
typedarray.recycle();
leftbutton.setbackgroundresource(leftbackgroud);
rigthbuton.setbackgroundresource(rightbackgroud);
titletextview.settext(titletext);
titletextview.settextcolor(titlecolor);
titletextview.settextsize(titlesize);
}public casetopbar(context context, attributeset attrs, int defstyleattr)
public casetopbar(context context, attributeset attrs, int defstyleattr, int defstyleres)
}
寫在要實現的頁面裡面
private casetopbar topbar;
topbar = findviewbyid(r.id.topbar);
topbar.setbtnlistener(new casetopbar.leftandriagthlisten()
@override
public void rightliner()
});
Android自定義View 自定義元件
自繪控制項也分兩種,自定義元件和自定義容器,自定義元件是繼承view類,自定義容器時繼承viewgrounp 今天主要分析下自定義元件 還是舉個例子來的實際些,假如我們要畫乙個最簡單的textview,首先想到的就是canvas.drawtext 方法,怎麼畫了?還是得一步一步來 1 寫乙個myte...
自定義view之自定義屬性
1.首先在res的values檔案下新建乙個名為attrs.xml檔案 在該xml檔案中編寫我們需要的屬性 declare styleable後面的name必須要與接下來要自定義的view名一致。attr 後面的name表示需要自定義的屬性,format表示這些屬性的型別 2.新建乙個類繼承text...
自定義view 二
自定義view的最重要的乙個部分是自定義它的外觀。根據你的程式的需求,通過ondraw方法實現繪製。在ondraw中,會傳遞給你乙個canvas。canvas封裝了繪製圖形的方法。還需要自定義乙個 paint去定義顏色樣式的填充 簡單來說 canvas定義你在螢幕上畫的圖形,而paint定義顏色,樣...