【问题标题】:Define OnClickListener methods for TextViews that were created dynamically为动态创建的 TextView 定义 OnClickListener 方法
【发布时间】:2012-10-24 06:26:11
【问题描述】:

我在我的 GUI 中动态创建了新的 TextViews,并将它们收集在一个 TextViews 数组中,但我无法设置 OnClickListeners(它们在数组中)...

所以我现在要做的是评估是否单击了 TextView 并处理该事件,但我不知道该怎么做...

如果我不想澄清,请告诉我,以便我将问题的所有细节都写下来...

谢谢!

【问题讨论】:

  • 人们自愿抽出时间来回答您的问题,请通过单击之前对您有所帮助的问题的答案中的复选标记来“回报”您的帮助。稍后,当您获得更多声誉时,您也应该投票赞成任何有用的答案。

标签: android touch-event onclicklistener


【解决方案1】:

即使在动态创建行时,您仍然拥有对 TextView 的引用。只需将 OnClickListener 添加到此引用中,如下所示:

TextView tv1 = new TextView(this);
tv1.setText(string);
tv1.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT));
tv1.setOnClickListener(new OnClickListener() {
    public void onClick(View view) {
        // Do something
    }
});
row.addView(tv1);

【讨论】:

    【解决方案2】:

    所以你的 TextViews 在一个像TextView[] textViews这样的数组中?

    只需致电textViews[0].setOnClickListener()

    如果您使用的是 ArrayList,那么它将是 textViews.get(0).setOnClickListener()

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多