【问题标题】:Get Selected ChipGroup Chip Text Into Clipboard Using Onclick Listener使用 Onclick 侦听器将选定的 ChipGroup 芯片文本放入剪贴板
【发布时间】:2020-08-10 22:03:10
【问题描述】:

如何通过 OnclickListener 从 ChipGroup 中获取选中的 Chip 项文本。这是我到目前为止所做的。我无法将所选项目添加到剪贴板:

            for(int i=0; i<tagsJsonArray.length();i++){
                try {
                    String tag;
                    tag = tagsJsonArray.getString(i);
                    LayoutInflater inflater = LayoutInflater.from(YTTags.this);
                    Chip chip = (Chip) inflater.inflate(R.layout.my_tag,null,false);
                    chip.setText(tag);
                    chip.setClickable(true);
                    chip.setCheckable(true);
                    chipGroup.addView(chip);
                    chip.setOnClickListener(new View.OnClickListener() {
                        @Override
                        public void onClick(View v) {

                            ClipboardManager copytag = (ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE);
                            ClipData clip = ClipData.newPlainText("tag", "Hi");
                            copytag.setPrimaryClip(clip);
                            Toast.makeText(YTTags.this, "Copied",Toast.LENGTH_LONG).show();
                        }
                    });
                }catch (JSONException e){
                    e.printStackTrace();
                }
            }

Onclick 侦听器单词很好,并复制了我在 ClipData 剪辑中设置的虚拟文本。但我想访问芯片项目文本。

【问题讨论】:

标签: android


【解决方案1】:

这可能对你有帮助!

public void onClick(View v) {
    ChipGroup chg = findViewById(R.id.chipGroup);
    int chipsCount = chg.getChildCount();

    int i = 0;
    while (i < chipsCount) {
      Chip chip = (Chip) chg.getChildAt(i);
      if (chip.isChecked() ) {
         msg += chip.getText().toString() + " " ;  
      }
      i++;
    }; 
    // show message here
}

【讨论】:

    猜你喜欢
    • 2023-04-08
    • 2023-01-05
    • 1970-01-01
    • 2022-06-18
    • 2020-02-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-21
    相关资源
    最近更新 更多