SetId()然后以java编程方式发现findviewById

时间:2017-11-15 13:19:46

标签: java android android-fragments android-viewpager

您好我正在尝试以编程方式设置ID,但问题是如何在java中设置后找到该ID。我在fragments (Viewpager)工作,这是我的代码。

property=new SearchableSpinner(getActivity());
city.setId(R.id.citybuy);
town.setId(R.id.townbuy);
property.setId(R.id.propertybuy);

 city = (SearchableSpinner) this.view.findViewById(R.id.citybuy);
  town = (SearchableSpinner) this.view.findViewById(R.id.townbuy);
 property = (SearchableSpinner) this.view.findViewById(R.id.propertybuy);

并且未找到id并显示NullPointerException 如果我set idXML,则显示此error

  

java.lang.IllegalArgumentException:错误的州级,期待View   国家但收到了课程   gr.escsoft.michaelprimez.searchablespinner.SearchableSpinner $ SavedState   代替。这通常发生在两个不同类型的视图都有的情况下   相同层次结构中的相同ID。此视图的id为id / city_wanted。   确保其他视图不使用相同的ID

虽然所有id's

fragments XML都不同

1 个答案:

答案 0 :(得分:1)

我相信你在xml中为视图设置id,现在你又将同一个id设置为同一个视图。