android - onClickListener 不适用于卡片视图上的选项卡式布局
问题描述
大家好,希望你们一切都好。我这里有问题。我有cardview
内部选项卡式布局的活动。在选项卡式布局内使用时onclicklistener
,它不起作用。但是在没有选项卡式布局的情况下使用它时,它可以工作。我如何在选项卡式布局中使用它。
卡片查看活动:
public class zurhai_ord extends AppCompatActivity {
GridLayout mainGrid;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_zurhai_ord);
mainGrid = (GridLayout) findViewById(R.id.mainGrid);
setToggleEvent(mainGrid);
}
private void setToggleEvent(GridLayout mainGrid) {
for (int i = 0; i < mainGrid.getChildCount(); i++) {
final CardView cardView = (CardView) mainGrid.getChildAt(i);
final int finalI = i;
cardView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Toast.makeText(zurhai_ord.this, "Hello "+ finalI, Toast.LENGTH_SHORT).show();
}
});
}
}
它可以在没有选项卡式布局的情况下工作
使用选项卡式布局它不起作用
我该如何解决这个问题?
解决方案
请使用 gridview 项目单击侦听器,如下所示:
gridView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, final View view, int position, long id) {
switch (position) {
case 0: break; }
}
});
在这里,您将获得每张卡片的位置。
推荐阅读
- python - 尝试将“pending_xref”节点附加到signode时发生异常
- database - JavaFX label.getText() 不返回任何内容
- filter - 如何在 Google 表格的 FILTER 中应用多个条件?
- python - 熊猫的几个月
- swift - 在 macOS 中截屏不保存图像
- java - 代码无法运行,说有问题,只说“找不到符号”
- typescript - 在转换为 typescript 时修复 Ember 加载初始化器
- c - 调用strtok的段错误?
- python - 在 raspberrypi 中安装 MySql 并使用 python3 将数据放入表中
- c# - 将变量与 UI 控件同步的最佳方式是什么?