我有一个自定义视图,其中包含两个线性布局:第一个是视图的标题,第二个是详细视图。
在自定义视图中,标题线性布局的OnClickListener已经被定义:当它触发时,它会折叠/展开第二个线性布局。
我想要做的是在标题的OnClickListener事件中添加更多功能(例如:折叠/展开第二个布局并显示Toast)。
我无法修改自定义视图的源代码。我尝试设置新的OnClickListener,但它隐藏了初始事件(折叠/展开)。
我应该如何实现这个问题?
My Custom View的源代码:
public class ExpandoLayout extends ViewGroup
{
/* some declarations */
private Linearlayout header;
private linearlayout footer;
/* some code */
@override
protected void onFinishInflate() {
header= new LinearLayout(context);
header.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
toggleExpand();
}
});
}
}
我想做的是在我的活动中为已定义的OnClickListener事件添加一些代码。 就像这样:
public class myActivity extends Activity {
private Linearlayout myCustomView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.rsdetail);
myCustomView= (MyCustomView) findViewById(R.id.expanded);
myCustomView.getChildAt(0).setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if(v instanceof LinearLayout)
{
v.performClick();
Toast.makeText(getActivity(), "ExpandoOnClickListener", 2000).show();
}
}
});
}