java - 如何在 Android Java 中以编程方式选择第一个芯片作为默认芯片?

标签 java android material-components-android android-chips

我已经在 XML 中定义了我的芯片组,并以编程方式添加芯片,如下所示:

chip_group_filter.removeAllViews();
        for(FilterModel filterModel : Common.categorySelected.getFilters()){
            Chip chip = (Chip) getLayoutInflater().inflate(R.layout.layout_filter_item, null);
            chip.setText(new StringBuilder(filterModel.getName()));
            chip.setCheckedIconVisible(false);
            chip_group_filter.addView(chip);
            chip.setChipBackgroundColorResource(R.color.lightGray);
            chip.setTextColor(getResources().getColor(android.R.color.black));
            chip.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
                @Override
                public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
                    if (isChecked) {
                        seeSelectedChip(chip);
                        serviceListViewModel.loadServicesByFilter(chip.getText().toString());
                    }
                }
            });

我想选择第一个芯片作为默认芯片,并想为其执行 checkChangedListener 事件。这个逻辑怎么写?

最佳答案

您可以使用方法:chipGroup.check(id) 。它与要选择的芯片的 id 一起使用。

您可以使用:

chipGroup.check(chip.getId());

或者如果您没有 ID

chipGroup.check(chipGroup.getChildAt(0).getId());

关于java - 如何在 Android Java 中以编程方式选择第一个芯片作为默认芯片?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64289851/

相关文章:

android - 如何在 Android Kotlin 中使用 Spring 动画(而不是普通动画)对圆形进度条进行动画处理

java - Log4j Jboss配置

android - Flutter:查找已停用小部件的祖先是不安全的

android - 如何在Interactor/UseCase中获取CoroutineScope

java - Android 蓝牙广播接收器未接收

android - 创建自定义按钮类以在 Android 中设置样式

java - 如何将 Java 列表与 Scala 的 foreach 一起使用?

java - ACTIVEMQ-发布者订阅者 Hello World 示例

java - 为什么 print 会解除阻塞执行?

android - 镜像(翻转)一个 View/ProgressBar