日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

android 自定义view实现拖动放大缩小_自定义itemCheckView

發(fā)布時(shí)間:2023/12/19 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 android 自定义view实现拖动放大缩小_自定义itemCheckView 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

閱讀五分鐘,每日十點(diǎn),和您一起終身學(xué)習(xí),這里是程序員Android

本篇文章主要介紹 Android 開(kāi)發(fā)中的部分知識(shí)點(diǎn),通過(guò)閱讀本篇文章,您將收獲以下內(nèi)容:

  • 自定義View類實(shí)現(xiàn)
  • 自定義View標(biāo)簽
  • 自定義View 布局
  • 自定義View 選擇器
  • 自定義View 素材
  • Activity 引用 自定義view 控件
  • Activity使用自定義View

itemCheckView 主要用于自定義選中item,常用于Settings 模塊中,實(shí)現(xiàn)效果如下:

自定義itemCheckView

選中.jpg

1. 自定義View類實(shí)現(xiàn)

public class ItemCheckView extends RelativeLayout { // 每一個(gè)xml中的結(jié)點(diǎn),都需要轉(zhuǎn)換成java中的對(duì)象才可以去運(yùn)行 // 轉(zhuǎn)換成一個(gè)對(duì)象,調(diào)用其構(gòu)造方法,在調(diào)用構(gòu)造方法的時(shí)候,去做xml--->view操作 private static final String TAG = "ItemCheckView"; private TextView tv_title; private TextView tv_des; private CheckBox cb_box; private static final String NAMESPACE = "http://schemas.android.com/apk/res/com.programandroid"; private String mDesTitle; private String mDesOff; private String mDesOn; public ItemCheckView(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); initAttrs(attrs); initUI(context); } public ItemCheckView(Context context, AttributeSet attrs) { super(context, attrs); initAttrs(attrs); initUI(context); } public ItemCheckView(Context context) { super(context); initUI(context); } // 單獨(dú)抽取出來(lái)的 xml--->view private void initUI(Context context) { View.inflate(context, R.layout.item_check_view, this); tv_title = (TextView) findViewById(R.id.tv_title); tv_des = (TextView) findViewById(R.id.tv_des); cb_box = (CheckBox) findViewById(R.id.cb_box); tv_title.setText(mDesTitle); } // checkbox是否選中的狀態(tài),就決定了當(dāng)前條目是否開(kāi)啟版本更新檢測(cè) // checbbox選中狀態(tài),和版本更新?tīng)顟B(tài)綁定 /** * 當(dāng)前條目的選中狀態(tài),是否開(kāi)啟更新的選中狀態(tài) */ public boolean isCheck() { // 是否要去更新,由checkbox選中狀態(tài)決定 true選中 false未選中 return cb_box.isChecked(); } /** * @param isCheck * 傳遞一個(gè)選中未選中的狀態(tài)變量(true 選中 false未選中) */ public void setCheck(boolean isCheck) { cb_box.setChecked(isCheck); if (isCheck) { tv_des.setText(mDesOn); } else { tv_des.setText(mDesOff); } } /** * @param attrs * 包含了屬性名稱和屬性值的set集合 */ private void initAttrs(AttributeSet attrs) { // 打印屬性總個(gè)數(shù) /* * Log.i(tag, "attrs.getAttributeCount() = "+attrs.getAttributeCount()); * for(int i=0;i

2. 自定義View標(biāo)簽

1.注意 :自定義 Android 命名空間

同Android 命名空間(xmlns:android="http://schemas.android.com/apk/res/android" )方法一樣,想使用自定義view的屬性,必須聲明自定義view的命名空間

(xmlns:programandroid="http://schemas.android.com/apk/res/com.programandroid")

2. 注意:自定義View 屬性

自定義View 屬性如下:

programandroid:desOff=" 不選中" programandroid:desOn=" 選中" programandroid:des

屬性聲明在res/values/attrs.xml中定義

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

3. 自定義View 布局

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

4. 自定義View 選擇器

  • CheckBox 自定義樣式
<?xml version="1.0" encoding="utf-8"?>
  • 自定義 item選擇器
<?xml version="1.0" encoding="UTF-8"?>

5. 自定義View 素材

btn_checkbox_normal.png

btn_checkbox_press.png

6.自定義view 在Activity中布局引用

7. Activity使用自定義View

/** * 自定義InitItemCheckView Activity 調(diào)用 */ private void InitItemCheckView() { // TODO Auto-generated method stub final ItemCheckView mItemCheckView = (ItemCheckView) findViewById(R.id.custom_item_check_view); mItemCheckView.setCheck(false); mItemCheckView.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub // 1,獲取當(dāng)前條的原有狀態(tài) boolean check = mItemCheckView.isCheck(); // 2,對(duì)第一步獲取的狀態(tài)取反 mItemCheckView.setCheck(!check); if (!check) { } else { } } }); }

友情推薦:

Android 干貨分享

至此,本篇已結(jié)束,如有不對(duì)的地方,歡迎您的建議與指正。同時(shí)期待您的關(guān)注,感謝您的閱讀,謝謝!

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)

總結(jié)

以上是生活随笔為你收集整理的android 自定义view实现拖动放大缩小_自定义itemCheckView的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。