Android onClick在实现View.OnclickListener的类内从未被调用

Android onClick在实现View.OnclickListener的类内从未被调用,android,Android,我读过与此类似的答案。但这并没有解决问题。这是一个问题场景。 MainActivity包含此片段 public class HomeFragment extends Fragment implements View.OnClickListener{ @Override public void onClick(View view){ Log.v("TAG",""+view.getId()); //No log message shown switch(v

我读过与此类似的答案。但这并没有解决问题。这是一个问题场景。 MainActivity包含此片段

public class HomeFragment extends Fragment implements View.OnClickListener{  

  @Override  
  public void onClick(View view){
      Log.v("TAG",""+view.getId());  //No log message shown
      switch(view.getId()){ 
         .....   
      }  
   }   
}
片段XML

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:app="http://schemas.android.com/apk/res-auto"
   android:id="@+id/coordinatorLayout"
   android:layout_width="fill_parent"
   android:layout_height="fill_parent"
   android:orientation="vertical">

   <RelativeLayout
       android:layout_width="fill_parent"
       android:layout_height="fill_parent"
       android:background="@drawable/app_background">
             <ImageView
                   android:id="@+id/imageview"
                   android:layout_width="wrap_content"
                   android:layout_height="wrap_content"
                   android:src="@drawable/ic_man" />
            <TextView
                   android:id="@+id/textview"
                   android:layout_width="fill_parent"
                   android:layout_height="wrap_content"
                   android:layout_marginLeft="5.0dip"
                   android:layout_toRightOf="@id/imageview"
                   android:text="@string/personname"
                   android:textColor="@color/textcolor"
                   android:textSize="25.0sp" />
    </RelativeLayout>
</LinearLayout>


根据我对Onclicklistener实现的理解,在视图中的任何位置单击都应该记录消息(此处)。没有使用scrollview上的嵌套视图。

我认为您忘记使用:
myButton.setOnClickListener(此)

按钮位于此布局片段_home.xml内

<Button
      android:id="@+id/myButton"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      />

我想你忘了使用:
myButton.setOnClickListener(这个)

按钮位于此布局片段_home.xml内

<Button
      android:id="@+id/myButton"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      />

在您的onCreateView()中添加以下行

您的onClick()如下所示

    @Override  
      public void onClick(View view){
          Log.v("TAG",""+view.getId());  //No log message shown
          switch(view.getId()){ 
// Add your View ID here.
            case R.id.textview:
    Toast.makeText(this, "TextView Clicked", Toast.LENGTH_SHORT).show();
    break;   
          }  
       }

希望这将对您有所帮助:)

在您的onCreateView()中添加以下行

您的onClick()如下所示

    @Override  
      public void onClick(View view){
          Log.v("TAG",""+view.getId());  //No log message shown
          switch(view.getId()){ 
// Add your View ID here.
            case R.id.textview:
    Toast.makeText(this, "TextView Clicked", Toast.LENGTH_SHORT).show();
    break;   
          }  
       }

希望这能对你有所帮助:)

但是你必须通过你观点的Id。我做了..那不起作用请看下面我的答案并让我知道。但是你必须通过你观点的Id。我做了..那不起作用请看下面我的答案并让我知道。是否有必要做所有需要听一听一听的观点?你能再解释一下吗,“我没听懂你的话吗?”拉拉夫洛:是的。通常的做法是为每个需要listener@LaraFlow看一个例子,是否有必要做所有必须听onClick的观点?你能再解释一点吗,我没听懂吗?@LaraFlow是的。通常的做法是为每个需要listener@LaraFlow请参阅以获取示例