ID является атрибутом представления, что область действия этого атрибута ограничена раздутой группой представления, которая включает это представление.
, например, если у нас есть этот xml файл (item_view. xml) :
<LinearLayout
...>
<TextView
...
android:id="@+id/textView_itemVew"/>
</LinearLayout>
и затем мы раздуваем этот файл несколько раз (возможно, в классе адаптера), как показано ниже:
View item1 = inflater.inflate(R.layout.item_view, null,true);
View item2 = inflater.inflate(R.layout.item_view, null,true);
View item3 = inflater.inflate(R.layout.item_view, null,true);
теперь мы можем получить доступ к представлению TextView по его идентификатору, но мы должны используйте группу представлений этого TextView, чтобы найти его.
//Id's are the same but view groups no!
TextView editText_of_item1 = item1.findViewById(R.id.editText_itemVew);.
TextView editText_of_item2 = item2.findViewById(R.id.editText_itemVew);
TextView editText_of_item3 = item3.findViewById(R.id.editText_itemVew);
.
.
.
, в вашем случае вы можете добавить каждый EditText к список для доступа к нему после того, как весь список раздули ... как это:
List<EditText> editTextList = new ArrayList<>();
public View getView(int position,View view,ViewGroup parent) {
LayoutInflater inflater=context.getLayoutInflater();
View itemView = inflater.inflate(R.layout.item_view, null,true);
EditText itemEditText = (EditText) itemView.findViewById(R.id.editText);
editTextList.add(itemEditText);
return itemView;
};
есть полезный пример на javaTpoint веб-сайте для вас.