極力推薦文章:歡迎收藏
Android 干貨分享
本篇文章主要介紹 Android 開發(fā)中的部分知識點,通過閱讀本篇文章,您將收獲以下內容:
自定義View類實現
自定義View標簽
自定義View 布局
自定義View 選擇器
自定義View 素材
Activity 自定義view布局引用
Activity使用自定義View
自定義ItemToggleView 常用于Settings中,主要控制開關的開啟與關閉。
自定義ItemToggleView實現效果如下:
public class ItemToggleView extends RelativeLayout { private static final String TAG = "ItemToggleView"; private TextView tv_title; private TextView tv_des; private static final String NAMESPACE = "http://schemas.android.com/apk/res/com.programandroid"; private String mDesTitle; private String mDesOff; private String mDesOn; private ImageView mImageView; private boolean isOnOFF; public ItemToggleView(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); initAttrs(attrs); initUI(context); } public ItemToggleView(Context context, AttributeSet attrs) { super(context, attrs); initAttrs(attrs); initUI(context); } public ItemToggleView(Context context) { super(context); initUI(context); } // 多帶帶抽取出來的 xml--->view private void initUI(Context context) { View.inflate(context, R.layout.item_toggle_view, this); tv_title = (TextView) findViewById(R.id.tv_title); tv_des = (TextView) findViewById(R.id.tv_des); mImageView = (ImageView) findViewById(R.id.switch_imageview); tv_title.setText(mDesTitle); } public boolean getCheck() { return isOnOFF; } /** * @param isCheck * 傳遞一個選中未選中的狀態(tài)變量(true 選中 false未選中) */ public void setCheck(boolean isCheck) { // mSwitchControlView.setChecked(isCheck); if (isCheck) { tv_des.setText(mDesOn); mImageView.setImageDrawable(getResources().getDrawable( R.drawable.toggle_on)); } else { tv_des.setText(mDesOff); mImageView.setImageDrawable(getResources().getDrawable( R.drawable.toggle_off)); } isOnOFF = isCheck; } /** * @param attrs * 包含了屬性名稱和屬性值的set集合 */ private void initAttrs(AttributeSet attrs) { // 打印屬性總個數 /* * Log.i(tag, "attrs.getAttributeCount() = "+attrs.getAttributeCount()); * for(int i=0;i2. 自定義View標簽 1.注意 :自定義 Android 命名空間 同Android 命名空間`(xmlns:android="http://schemas.android.com/apk/res/android"
2. 注意:自定義View 屬性
)方法一樣,想使用自定義view的屬性,必須聲明自定義view`的命名空間
(xmlns:programandroid="http://schemas.android.com/apk/res/com.programandroid")自定義View 屬性如下:
programandroid:desOff=" 不選中" programandroid:desOn=" 選中" programandroid:desTitle=" WIFI "屬性聲明在res/values/attrs.xml中定義
3. 自定義View 布局 4. 自定義View 選擇器 5. 自定義View 素材6. Activity 自定義view布局引用
7. Activity使用自定義View/** * 自定義 ItemToggleView */ private void InitItemToggleView() { // TODO Auto-generated method stub final ItemToggleView mItemToggleView = (ItemToggleView) findViewById(R.id.custom_item_toggle_view); mItemToggleView.setCheck(false); mItemToggleView.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub mItemToggleView.setCheck(!mItemToggleView.getCheck()); } }); }至此,本篇已結束,如有不對的地方,歡迎您的建議與指正。同時期待您的關注,感謝您的閱讀,謝謝!
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規(guī)行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/75874.html
摘要:極力推薦文章歡迎收藏干貨分享閱讀五分鐘,每日十點,和您一起終身學習,這里是程序員本篇文章主要介紹開發(fā)中的部分知識點,通過閱讀本篇文章,您將收獲以下內容自定義類實現自定義布局自定義素材使用自定義自定義常用于中,主要控制開關的開啟與關閉。 showImg(https://segmentfault.com/img/remote/1460000019975019?w=157&h=54); 極力...
摘要:變量的函數引用的自定義屬性被稱為變量。為此,可讀性和可維護性是自定義屬性最大的優(yōu)勢。自定義屬性作用域在中,變量有作用域一說。因此,在選擇器中聲明的自定義屬性,其作用域的范圍是全局范圍,也就是全局作用域。 引言 ??CSS語言是一種聲明式語言,不像其他語言有變量、條件和邏輯等特性,因為這個原因,社區(qū)中有了各種CSS處理器語言,比如Sass、LESS和Stylus等。這些處理器語言引入了一...
摘要:若自定義元素標簽名稱不可用則摒棄。總之,自定義元素讓開發(fā)者的代碼更易理解和維護,并分割為小型,可復用及可封裝的模塊。被稱為自定義元素接口,雖然現在仍然可用,但是已經被棄用并被認為是糟糕的實現。 原文請查閱這里,略有刪減,本文采用知識共享署名 4.0 國際許可協(xié)議共享,BY Troland。 這是 JavaScript 工作原理第十九章。 概述 在 前述文章中,我們介紹了 Shadow ...
閱讀 766·2023-04-25 17:33
閱讀 3626·2021-07-29 14:49
閱讀 2480·2019-08-30 15:53
閱讀 3435·2019-08-29 16:27
閱讀 2000·2019-08-29 16:11
閱讀 1030·2019-08-29 14:17
閱讀 2432·2019-08-29 13:47
閱讀 2016·2019-08-29 13:28