我在Android studio中制作应用程序。我的应用程序有一个带有3种布局的标签式活动(tab1,tab2,tab3)。我想在' tab1'中添加一些imageButton。因此以下代码:
public class tab1 extends Fragment{
private ImageView hom,home,homei;
private ImageButton img;
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup
container, @Nullable Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.tab1,container);
// View innerView = v.findViewById(R.id.)
hom=(ImageView) v.findViewById(R.id.hom);
home=(ImageView) v.findViewById(R.id.home);
homei=(ImageView) v.findViewById(R.id.homei);
img=(ImageButton) v.findViewById(R.id.img);
img.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getContext(),"Experiment successful",Toast.LENGTH_SHORT).show();
}
});
return inflater.inflate(R.layout.tab1,container,false);
}
}
没有编译错误但是当我运行应用程序时,imageButton没有响应。请帮助我。
答案 0 :(得分:0)
尝试正确返回视图。您在oncreateView()
return v;
相反
return inflater.inflate(R.layout.tab1,container,false);
答案 1 :(得分:0)
您可以使用自定义布局来添加要添加图像按钮的特定布局,以下是示例。
tablayout.addTab(tablayout.newTab().setText("tab1"));
tablayout.addTab(tablayout.newTab().setText("tab2"));
tablayout.addTab(tablayout.newTab().setCustomView(R.layout.tab_cart_counter_layout));
第三个,你可以膨胀自己的标签布局。
答案 2 :(得分:0)
将此更改为 - :
return inflater.inflate(R.layout.tab1,container,false);
到 - :
View v = inflater.inflate(R.layout.tab1,container);
return v;
The view which you are using