我一直试图让按钮onClickListener
从充气布局中恢复工作。我试过这个但没有任何反应:
LayoutInflater inflater = (LayoutInflater)mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View view = inflater.inflate(R.layout.my_profile_fragment, null);
Button svBtn = (Button) view.findViewById(R.id.saveBtn);
svBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
System.out.println("CLICKED");
}
});
在RecyclerView
适配器内部,我在onCreateViewHolder
中展示了具有卡片布局的原始布局,并且我能够与它进行交互:
@Override
public ItemRowHolder onCreateViewHolder(ViewGroup viewGroup, int i) {
View v = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.single_card, null);
return new ItemRowHolder(v);
}
但我想从不同的布局(片段布局)与按钮进行交互。这是可能的,如果是这样我怎么能实现呢?
答案 0 :(得分:0)
尝试view.getParent()
获取您片段的父视图。
答案 1 :(得分:0)
不幸的是,你这样做的方式无法发挥作用。
转到onBindViewHolder(ViewHolder viewholder, int position)
方法,并使用viewholder
的字段直接在那里设置点击监听器。
@Override
public void onBindViewHolder(final RecyclerView.ViewHolder viewHolder, int position) {
viewHolder.svBtn.setOnClickListener(this);
}