我正在开发一个Android应用程序,我有一个自定义GUI组件,它扩展了TextView.
我想让我的自定义控件在我的自定义控件类和我的重写onclick方法中单击时执行任务.
例如,扩展TextView的类实现了OnClick侦听器并将日志写入日志cat.
然后在我的活动中,我为我的自定义控件设置了一个onclick监听器,这显示了一个Toast通知.
我想要发生的是,当我点击我的自定义控件时,我的活动被覆盖onclick显示toast,并且click方法上的自定义控件类也会运行以显示日志.但我似乎只能得到一个工作或其他,例如,如果我不运行myCustom.setOnClickListener(myListener)然后使用类onclick并执行日志,如果我设置onClick监听器然后我只得到吐司不是日志.
下面是我的自定义控件类
public class NavTextView extends TextView implements View.OnClickListener
{
public NavTextView(Context context) {
super(context);
setOnClickListener(this);
}
public NavTextView(Context context, AttributeSet attrs) {
super(context, attrs);
setOnClickListener(this);
}
public NavTextView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
setOnClickListener(this);
}
public NavTextView(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
super(context, attrs, defStyleAttr, defStyleRes);
setOnClickListener(this);
}
@Override
public void onClick(View v) {
Log.d("NavTextView", "This has been clicked");
}
}
Run Code Online (Sandbox Code Playgroud)
以下是我对onCreate方法的活动
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); …Run Code Online (Sandbox Code Playgroud)