亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Android開發(fā)手冊Chip監(jiān)聽及ChipGroup監(jiān)聽

 更新時間:2022年06月10日 16:38:14   作者:芝麻粒兒  
這篇文章主要為大家介紹了Android開發(fā)手冊Chip監(jiān)聽及ChipGroup監(jiān)聽,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

??Chip監(jiān)聽

選中狀態(tài)的監(jiān)聽:setOnCheckedChangeListener,該監(jiān)聽只有設置了checkable 屬性為true或者使用了【filter/entry/choice】這三個style主題的時候才生效。

點擊事件的監(jiān)聽:setOnClickListener

關閉按鈕被點擊的監(jiān)聽:setOnCloseIconClickListener

Java

myChip.setOnCloseIconClickListener(View.OnClickListener { v: View? ->
    //進行業(yè)務處理
    Log.e("TAG", "onCreate: Chip文字后面圖標點擊事件")
})
myChip.setOnClickListener(View.OnClickListener { v: View? ->
    //進行業(yè)務處理
    Log.e("TAG", "onCreate: Chip整體普通點擊事件")
})
myChip.setOnCheckedChangeListener(CompoundButton.OnCheckedChangeListener { buttonView: CompoundButton?, isChecked: Boolean ->
    //進行業(yè)務處理
    Log.e("TAG", "onCreate: Chip選中狀態(tài)監(jiān)聽")
})

Kotlin

myChip.setOnCloseIconClickListener(v -> {
    //進行業(yè)務處理
    Log.e("TAG", "onCreate: Chip文字后面圖標點擊事件");
});
myChip.setOnClickListener(v -> {
    //進行業(yè)務處理
    Log.e("TAG", "onCreate: Chip整體普通點擊事件");
});
myChip.setOnCheckedChangeListener((buttonView, isChecked) -> {
    //進行業(yè)務處理
    Log.e("TAG", "onCreate: Chip選中狀態(tài)監(jiān)聽");
});

??ChipGroup監(jiān)聽

myChipGroup.setOnCheckedChangeListener(new ChipGroup.OnCheckedChangeListener() {
    @Override
    public void onCheckedChanged(ChipGroup group, int checkedId) {
        //看到這的小伙伴可能就疑問了,區(qū)分view的id做不同的業(yè)務,如果是布局中寫好的還可以,但實際上子view應該是根據接口數據添加進去的,這些點擊怎么區(qū)分呢?
        //我們下篇示例做個完整的。
        Log.e("TAG", "onCheckedChanged: 選中view的id");
    }
});

??實例

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">
    <com.google.android.material.chip.ChipGroup
        android:id="@+id/myChipGroupExample"
        android:layout_width="wrap_content"
        app:singleSelection="true"
        android:layout_height="wrap_content">
</LinearLayout>

Java

public class TestChipAndChipGroupActivity extends AppCompatActivity {
    private List<Chip> chipViewList = new ArrayList<>();
    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_chip_chipgroup);
        ChipGroup myChipGroupExample = findViewById(R.id.myChipGroupExample);
        List<String> dataList = new ArrayList<>();
        dataList.add("芝麻粒兒");
        dataList.add("這是你的業(yè)務數據");
        dataList.add("根據業(yè)務數據");
        dataList.add("創(chuàng)建子View");
        dataList.add("公眾號");
        dataList.add("空名先生");
        for (String temp : dataList) {
            myChipGroupExample.addView(createChipView(temp));
        }
        myChipGroupExample.setOnCheckedChangeListener(new ChipGroup.OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(ChipGroup group, int checkedId) {
                //看到這的小伙伴可能就疑問了,區(qū)分view的id做不同的業(yè)務,如果是布局中寫好的還可以,但實際上子view應該是根據接口數據添加進去的,這些點擊怎么區(qū)分呢?
                //我們下篇示例做個完整的。
                for (Chip tempChip : chipViewList) {
                    if (tempChip.getId() == checkedId) {
                        Log.e("TAG", "onCheckedChanged: 選中view的id內容:" + tempChip.getText());
                    }
                }
            }
        });
    }
    private View createChipView(String temp) {
        Chip chipView = new Chip(this);
        chipView.setId(View.generateViewId());
        chipView.setText(temp);
        chipView.setChipIcon(getDrawable(R.drawable.icon_xin));
        //設置是否可以選中
        chipView.setCheckable(true);
        chipView.setTextSize(18);
        chipViewList.add(chipView);
        return chipView;
    }
}

Kotlin代碼

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_test)
    val myChipGroupExample = findViewById<ChipGroup>(R.id.myChipGroupExample)
    val dataList: MutableList<String> = java.util.ArrayList()
    dataList.add("芝麻粒兒")
    dataList.add("這是你的業(yè)務數據")
    dataList.add("根據業(yè)務數據")
    dataList.add("創(chuàng)建子View")
    dataList.add("公眾號")
    dataList.add("空名先生")
    for (temp in dataList) {
        myChipGroupExample.addView(createChipView(temp!!))
    }
    myChipGroupExample.setOnCheckedChangeListener { group, checkedId -> //看到這的小伙伴可能就疑問了,區(qū)分view的id做不同的業(yè)務,如果是布局中寫好的還可以,但實際上子view應該是根據接口數據添加進去的,這些點擊怎么區(qū)分呢?
        //我們下篇示例做個完整的。
        for (tempChip in chipViewList) {
            if (tempChip.id == checkedId) {
                Log.e("TAG", "onCheckedChanged: 選中view的id內容:" + tempChip.text)
            }
        }
    }
}
private val chipViewList: MutableList<Chip> = ArrayList()
private fun createChipView(temp: String): View? {
    val chipView = Chip(this)
    chipView.id = View.generateViewId()
    chipView.text = temp
    chipView.chipIcon = getDrawable(R.drawable.icon_xin)
    //設置是否可以選中
    chipView.isCheckable = true
    chipView.textSize = 18f
    chipViewList.add(chipView)
    return chipView
}

效果展示

以上就是Android開發(fā)手冊Chip監(jiān)聽及ChipGroup監(jiān)聽的詳細內容,更多關于Android開發(fā)Chip及ChipGroup監(jiān)聽的資料請關注腳本之家其它相關文章!

相關文章

  • Android入門之Menu組件的使用教程詳解

    Android入門之Menu組件的使用教程詳解

    這篇文章主要為大家詳細介紹了Android中常用的幾個Menu組件的使用教程,文中的示例代碼講解詳細,具有一定的學習價值,感興趣的可以了解一下
    2022-11-11
  • Android實現控制攝像頭拍照

    Android實現控制攝像頭拍照

    這篇文章主要為大家詳細介紹了Android實現控制攝像頭拍照,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • Android實現用戶圓形頭像和模糊背景

    Android實現用戶圓形頭像和模糊背景

    這篇文章主要介紹了Android實現用戶圓形頭像和模糊背景 ,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-04-04
  • Android開發(fā)實現的標準體重計算器功能示例

    Android開發(fā)實現的標準體重計算器功能示例

    這篇文章主要介紹了Android開發(fā)實現的標準體重計算器功能,結合實例形式分析了Android體重計算器的界面布局與功能實現相關操作技巧,需要的朋友可以參考下
    2017-12-12
  • Android 本地廣播和強制下線功能的實現代碼

    Android 本地廣播和強制下線功能的實現代碼

    這篇文章主要介紹了Android 本地廣播和強制下線功能的實現代碼,本文通過示例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-07-07
  • 深入理解Android MD5數據加密

    深入理解Android MD5數據加密

    在Android中需要對各種數據進行加密的操作,比如用戶短信備份的數據加密、用戶賬戶登陸的密碼加密以及應用于服務器連接傳遞重要數據的加密,用處非常的多,所以今天來總結一下MD5加密算法。
    2016-09-09
  • android studio 安裝完成ButterKnife插件卻無法使用(解決方案)

    android studio 安裝完成ButterKnife插件卻無法使用(解決方案)

    這篇文章主要介紹了android studio 安裝完成ButterKnife插件卻無法使用問題,本文通過圖文并茂的形式給大家分享解決方法,對大家有非常好的幫助,需要的朋友可以參考下
    2020-03-03
  • Android開發(fā)之PopupWindow創(chuàng)建彈窗、對話框的方法詳解

    Android開發(fā)之PopupWindow創(chuàng)建彈窗、對話框的方法詳解

    這篇文章主要介紹了Android開發(fā)之PopupWindow創(chuàng)建彈窗、對話框的方法,結合實例形式詳細分析了Android使用PopupWindow創(chuàng)建對話框相關操作技巧,需要的朋友可以參考下
    2019-03-03
  • Android自定義Material進度條效果

    Android自定義Material進度條效果

    這篇文章主要為大家詳細介紹了Android自定義Material進度條效果的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-01-01
  • 如何在Android中實現漸顯按鈕的左右滑動效果

    如何在Android中實現漸顯按鈕的左右滑動效果

    本篇文章是對在Android中實現漸顯按鈕的左右滑動效果進行了詳細的分析介紹,需要的朋友參考下
    2013-06-06

最新評論