0
ListFragment에 ListView를 만들고 있는데 동적으로 채워지는 중입니다. 얼마나 많은 항목이 거기에있게 될지 실감이 없습니다. 이제 하나의 버튼을 클릭하여이 텍스트를 저장하기 위해 사용자가 ListView의 각 항목에 대한 EditTexts 텍스트를 설정해야합니다. 내 질문은, 어떻게 레이아웃에서 단 하나의 EditText 사실 때 각 항목의 EditText 가리킬 수 있습니다. 내 코드는 첫 번째 EditText 텍스트를 목록에 저장합니다. 누구나 아이디어가 있습니까? 미안 해요! 나는 안드로이드에 처음 익숙하다.안드로이드의 ListView에서 동적으로 생성되는 EditText 요소를 어떻게 가리킬 수 있습니까?
@Override
public View getView(int i, View view, ViewGroup viewGroup) {
final ViewHolder viewHolder;
// General ListView optimization code.
if (view == null) {
view = mInflater.inflate(R.layout.listitem_device, null);
viewHolder = new ViewHolder();
viewHolder.deviceAddress = (TextView) view.findViewById(R.id.device_address);
viewHolder.deviceName = (EditText) view.findViewById(R.id.device_name);
view.setTag(viewHolder);
} else {
viewHolder = (ViewHolder) view.getTag();
}
BluetoothDevice device = mLeDevices.get(i);
viewHolder.deviceAddress.setText(device.getAddress());
saveNode.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
for (int j = 0; j < mLeDeviceListAdapter.getCount() ; j++) {
String name = viewHolder.deviceName.getText().toString();
String address = viewHolder.deviceAddress.getText().toString();
handler = new DataHandler(getActivity().getBaseContext());
handler.open();
handler.insertNode(address, name);
Toast.makeText(getActivity().getBaseContext(), "Node " + name + " inserted", Toast.LENGTH_LONG).show();
handler.close();
}
}
});
return view;
}
을하지만 캔트 당신이 찾고있는 것을 알아낼 에 대한. 더 자세하게 얘기해 주 시겠어요? 목록 항목에 EditText를 추가하고 있습니까? –
의견을 보내 주셔서 감사합니다, Eugene! 모든 목록 항목에 EditText가있는 목록보기가 실제로 있습니다. 이러한 목록 항목은 내가 스캔하는 블루투스 장치입니다. 이제 사용자가 목록에 표시된 각 장치에 대해 자신이 선택한 이름을 쓰고 "저장"버튼 하나를 클릭하여이 모든 이름을 저장해야합니다. 그러나, 어떻게 listview에서 모든 editText에 대해 editText.getText()를 사용할 수 있습니까?! 나는 어댑터를 사용하고 있으며 레이아웃에서 하나의 editText를 반복하고 있으며, EditText id는 listView의 첫 번째 요소를 참조 할뿐 모든 요소를 참조하지는 않습니다! –
죄송합니다. 조금 늦었습니다. 나는 그것을 볼 것이다 –