android - onclick在自定义 View android中不起作用

标签 android

我创建了一个自定义视图并设置了onClick,但它不起作用。它通过错误IllegalStateException: Could not find a method而这是工作正常时,我尝试它与默认视图。

<com.package.name.CircularTextView
                android:layout_width="30dp"
                android:layout_height="30dp"
                android:layout_margin="2dp"
                android:onClick="colorClicked"
                android:tag="#ffaacc"
                app:solidColor="#ffaacc" />

            <TextView
                android:layout_width="30dp"
                android:layout_height="30dp"
                android:layout_margin="2dp"
                android:onClick="colorClicked"
                android:text="adhaksjd asdas kd" />

主要活动
public void colorClicked(View view) {
    Log.i(TAG, "color clicked...");
    /*fragCameraDrawing = (Drawing) getFragmentManager().findFragmentByTag("cameraDrawing");
    fragmentCommunicator = (FragmentCommunicator) fragCameraDrawing;
    fragmentCommunicator.passingView(view);*/
}

对于自定义视图,这不起作用,但对于默认视图,它起作用。你能告诉我我做错了什么吗?

最佳答案

在自定义视图中使用setOnclickListener内部。
这样地。

class CircularTextView extends view implement view.OnClickListener{
  //other code
  // inside constructor 
      this.setOnClickListener(this);
public void onClick(View v){
      Log.i(TAG, "color clicked...");
}
}

关于android - onclick在自定义 View android中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44900720/

相关文章:

android - ScrollView 优化

android - 如何在 KitKat 版本之前的 Android 中获取短信应用程序(默认)的包名?

javascript - 从 QR Contact 等网站将联系人数据保存到手机

android - 重新打开 sqlcipher DB 时创建表 android_metadata 失败

android - 无法从 Android 客户端调用 C# .net Web 服务方法

java - 我需要扩展到fragment 还需要listactivity

java - 如何序列化自定义对象列表并在 Android 中的 RestoreInstanceState 上恢复它?

android - 在 Android 应用程序中显示带有其图像的 Facebook 页面帖子

java - 当我尝试在 android 中使用 Mandrill SMTP 发送电子邮件时出错

Android:将一个 xml 包含到另一个 xml 中