【问题标题】:Implementing Button onClickView inside a class that extends OnClickItemListener在扩展 OnClickItemListener 的类中实现 Button onClickView
【发布时间】:2015-12-18 02:14:54
【问题描述】:

我有一个classextendsFragmentimplementsOnClickItemListener,用于网格视图。 我需要在这个class 中添加3 个可点击按钮,但是OnClick(View v) 无法实现,因为class 实现了OnClickItemListener。在我的XML 布局中,按钮位于LinearLayout 内。
我怎样才能实现它以使其正常工作?

谢谢。

【问题讨论】:

  • 你可以实现多个接口,就像下面实现 OnItemClickListener,OnClickListener

标签: java android android-studio onclicklistener buttonclick


【解决方案1】:

无论您做什么,都需要在按钮上设置点击监听器。这意味着您必须在视图中找到按钮(可能在onCreateView 中),然后调用view.setOnClickListener(new View.OnClickListener())。如果你想让片段成为这个监听器,添加另一个接口class fragment implements OnClickListener, OnItemClickListener,然后当你找到视图调用view.setOnClickListener(this)

【讨论】:

    【解决方案2】:

    您好,如果您已经实现了OnItemClickListener,您将覆盖

    onItemClick(AdapterView<?> parent, View view, int position, long id)
    

    方法,

    对于OnClickListener,你将实现

    onClick(View v)
    

    方法,

    所以这两种不同接口的不同方法不会造成任何冲突。您还可以在 java 中实现多个接口。所以实现 OnClickListener 接口不会造成任何问题。

    参考:

    http://developer.android.com/reference/android/widget/AdapterView.OnItemClickListener.html

    http://developer.android.com/reference/android/view/View.OnClickListener.html

    【讨论】:

    • 正在工作。我把 onCreateView Button llNew= (Button) v.findViewById(R.id.llNew); llNew.setOnClickListener(this);我在课堂上的某个地方创建了 public void onClick(View v) ...。谢谢!!
    猜你喜欢
    • 2021-12-24
    • 2012-06-06
    • 2018-04-29
    • 2012-12-10
    • 2015-01-25
    • 2015-06-02
    • 2016-10-24
    • 2013-03-27
    • 2014-04-21
    相关资源
    最近更新 更多