id "@+id/call"
(布局single_item.xml
)时,我在findVewById
setcontextview(R.layout.main)
{{1}}。应用崩溃。如何修复错误
答案 0 :(得分:35)
如果要访问另一个布局(而非活动布局)中的视图,则可以对要使用的布局进行充气并以此方式访问它。
示例:
View inflatedView = getLayoutInflater().inflate(R.layout.other_layout, null);
TextView text = (TextView) inflatedView.findViewById(R.id.text_view);
text.setText("Hello!");
有关充气布局的更多信息,请访问here。
答案 1 :(得分:0)
您正在尝试查找在layour R.layout.main中的R.layout.single_item中声明的View(R.id.call),所以我猜它会抛出一个空指针异常。
您应该在main.xml文件中声明“@ + id / call”元素,或者将上下文视图设置为R.layout.single_item
答案 2 :(得分:0)
从视图中获取id
的简单方法是:
String id = getResources().getResourceEntryName(view.getId());
答案 3 :(得分:0)
如果要获取片段中的ID,请使用以下方法。 用这样的视图替换return语句。
View view= inflater.inflate(R.layout.fragment_left, container, false);
img=view.findViewById(R.id.image);
return view;
在返回视图之前调用所有方法。
答案 4 :(得分:-2)
View parent = (View)view.getParent();
??? = (???)parent.findViewById(R.id.call);
试试这个。希望它有所帮助