我可以在哪里添加侦听器以便始终添加,如果自定义视图是从xml创建的,或者是否被夸大,则无关紧要。
我尝试onFinishInflate
,但只有在从xml布局创建视图时才会调用它。没有OnViewCreated
或类似的东西我可以确定所有内部视图都已创建并且可以附加侦听器。
更新:典型的复合视图
public class CustomView extends RelativeLayout{
//called directy
public CustomView(Context context) {
super(context);
initializeViews(context);
}
private void initializeViews(final Context context) {
LayoutInflater inflater = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
inflater.inflate(R.layout.myview_layout, this);
}
//called when used inside xml layout
public ChatView(Context context, AttributeSet attrs) {
super(context, attrs);
initializeViews(context);
}
//idem
public ChatView(Context context,
AttributeSet attrs,
int defStyle) {
super(context, attrs, defStyle);
initializeViews(context);
}