arraylist가 업데이트 된 후 Listview가 업데이트되지 않습니까?

신파

이 맥락에서 다른 많은 게시물을 보았지만 아무도 도움이되지 않았습니다. 문제는 addField 버튼을 클릭하면 대화 상자 안의 listview가 새보기를 한 번만 추가한다는 것입니다. 그러나 다른 클릭에서는 어댑터가 올바르게 작동하지만 업데이트되지 않습니다 (getView가 호출되고 어댑터의 arrayList 크기도 변경됨을 의미합니다).

어댑터 클래스에서 notifyDataSetChanged ()를 사용했습니다. 결과가 없다! 활동에서 adpater 클래스의 인스턴스를 사용하고 myAdapter.notifyDataSetChanged ()를 호출했습니다. 결과가 없다!

내 코드는 다음과 같습니다.

public class MainActivity extends Activity {

ListView lvfid;
FieldAdapter fAdapter;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    //some code
    showFid();
}

private void showFiD(){
    final ArrayList <HashMap<String,String>> al = new ArrayList<HashMap<String,String>>();
    final Dialog dialog = new Dialog(MainActivity.this , R.style.DialogTheme);
    dialog.setContentView(R.layout.field_dialog);
    dialog.setCancelable(true);
    dialog.show();
    Button addField = (Button) dialog.findViewById(R.id.btnfidField);
    lvfid = (ListView) dialog.findViewById(R.id.lvfid);
    //Another plan i have tested, but no result:
    //fAdapter = new FieldAdapter(dialog.getContext(),al);
    //lvfid.setAdapter(fAdapter);
    addField.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View arg0) {
            HashMap<String,String> h = new HashMap<String,String>();
            h.put("name", "");
            h.put("value", "");
            al.add(h);
            lvfid.setAdapter(new FieldAdapter(dialog.getContext(), al));
            //fAdapter.notifyDataSetChanged();

        }
    });
}

public class FieldAdapter extends BaseAdapter{

private ArrayList <HashMap <String,String>> arrayList;
private LayoutInflater inflater;

public FieldAdapter(Context context, ArrayList<HashMap <String,String>> arrayList) {
    inflater = (LayoutInflater) context
            .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    this.arrayList = arrayList;
}

@Override
public int getCount() {
    return arrayList.size();
}

@Override
public Object getItem(int position) {
    return position;
}

@Override
public long getItemId(int position) {
    return position;
}


@Override
public View getView(int position, View convertView, ViewGroup arg2) {
    View view = null;
    if (convertView == null)
        view = inflater.inflate(R.layout.field_inflater, null);
     else 
        view = convertView;
    Holder holder = new Holder();
    holder.edName     = (EditText) view.findViewById(R.id.edfidName);
    holder.edValue     = (EditText) view.findViewById(R.id.edfidValue);
    //holder.edName.setText(arrayList.get(position).get("name"));
    //holder.edValue.setText(arrayList.get(position).get("value"));
    return view;
}

private class Holder {
    private EditText edName;
    private EditText edValue;
}


}

}

업데이트 : 모두 시간을내어 죄송합니다. 어리석은 문제는 내리스트 뷰가 스크롤 뷰 안에 있어서는 안된다는 것입니다! 나는 이것이 같은 문제를 가진 다른 사람들에게 도움이되기를 바랍니다!

신파

시간을내어 미안 해요! 어리석은 문제는 내리스트 뷰가 스크롤 뷰 안에 있어서는 안된다는 것입니다! 목록보기를 scrollview에서 가져온 후 문제가 해결되었습니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

notifydataSetChanged () 후 ListView가 업데이트되지 않습니다.

분류에서Dev

테이블 데이터가 업데이트 된 후 jQuery DataTable 정렬이 업데이트되지 않음

분류에서Dev

테이블 데이터가 업데이트 된 후 jQuery DataTable 정렬이 업데이트되지 않음

분류에서Dev

Observable 구독이 트리거 된 후 Angular UI가 업데이트되지 않음

분류에서Dev

어레이 업데이트 후 Firestore에 업데이트 된 문서가 표시되지 않음

분류에서Dev

Angular 2 : 배열이 업데이트 된 후 뷰가 업데이트되지 않음

분류에서Dev

.clear () 사용 후 ArrayList가 업데이트되지 않음

분류에서Dev

DB 삽입 후 ListView가 업데이트되지 않음

분류에서Dev

Adapter.notifyDataSetChanged () 후에 Listview가 업데이트되지 않습니다.

분류에서Dev

@ObservedObject가 변경된 후 SwiftUI View가 업데이트되지 않음

분류에서Dev

소스 업데이트 후 Mapbox 레이어가 업데이트되지 않음

분류에서Dev

업데이트 후 libreoffice가 시작되지 않습니다.

분류에서Dev

Angular2-SebmGoogleMapMarker 이벤트 "markerClick"이 트리거 된 후보기가 업데이트되지 않음

분류에서Dev

Angularjs ng-repeat가 배열 업데이트 후 업데이트되지 않음

분류에서Dev

db 배열 업데이트 후 ng-repeat가 업데이트되지 않음

분류에서Dev

ReactJs 자식이 부모 상태가 변경된 후 업데이트되지 않았습니다.

분류에서Dev

Angular에서 URL이 변경된 후 구성 요소가 업데이트되지 않습니다.

분류에서Dev

listview가 업데이트되지 않음

분류에서Dev

laravel 5.4에서 업데이트 후 업로드 된 이미지가 삭제되지 않음

분류에서Dev

업데이트 후 onChanges가 트리거되지 않는 이유

분류에서Dev

React Native ListView가 정렬시 또는 새 데이터 검색 후 업데이트되지 않습니다.

분류에서Dev

$ scope가 업데이트 된 후 ng-repeat가 정보를 업데이트하지 않음

분류에서Dev

웹 서비스 동기화 후 ListView가 업데이트되지 않음

분류에서Dev

SqliteDatabase에 항목을 삽입 한 후 ListView가 업데이트되지 않음

분류에서Dev

angularjs보기가 $ http 이후에 업데이트되지 않음

분류에서Dev

업데이트 된 NSTableCellView.textField가 테이블 표시에서 업데이트되지 않았습니다.

분류에서Dev

링크 된 파일이 수정 된 후 systemd 서비스가 업데이트되지 않음

분류에서Dev

DataGridView가 두 번째 행 이후에 업데이트되지 않습니다.

분류에서Dev

DataGridView가 두 번째 행 이후에 업데이트되지 않습니다.

Related 관련 기사

  1. 1

    notifydataSetChanged () 후 ListView가 업데이트되지 않습니다.

  2. 2

    테이블 데이터가 업데이트 된 후 jQuery DataTable 정렬이 업데이트되지 않음

  3. 3

    테이블 데이터가 업데이트 된 후 jQuery DataTable 정렬이 업데이트되지 않음

  4. 4

    Observable 구독이 트리거 된 후 Angular UI가 업데이트되지 않음

  5. 5

    어레이 업데이트 후 Firestore에 업데이트 된 문서가 표시되지 않음

  6. 6

    Angular 2 : 배열이 업데이트 된 후 뷰가 업데이트되지 않음

  7. 7

    .clear () 사용 후 ArrayList가 업데이트되지 않음

  8. 8

    DB 삽입 후 ListView가 업데이트되지 않음

  9. 9

    Adapter.notifyDataSetChanged () 후에 Listview가 업데이트되지 않습니다.

  10. 10

    @ObservedObject가 변경된 후 SwiftUI View가 업데이트되지 않음

  11. 11

    소스 업데이트 후 Mapbox 레이어가 업데이트되지 않음

  12. 12

    업데이트 후 libreoffice가 시작되지 않습니다.

  13. 13

    Angular2-SebmGoogleMapMarker 이벤트 "markerClick"이 트리거 된 후보기가 업데이트되지 않음

  14. 14

    Angularjs ng-repeat가 배열 업데이트 후 업데이트되지 않음

  15. 15

    db 배열 업데이트 후 ng-repeat가 업데이트되지 않음

  16. 16

    ReactJs 자식이 부모 상태가 변경된 후 업데이트되지 않았습니다.

  17. 17

    Angular에서 URL이 변경된 후 구성 요소가 업데이트되지 않습니다.

  18. 18

    listview가 업데이트되지 않음

  19. 19

    laravel 5.4에서 업데이트 후 업로드 된 이미지가 삭제되지 않음

  20. 20

    업데이트 후 onChanges가 트리거되지 않는 이유

  21. 21

    React Native ListView가 정렬시 또는 새 데이터 검색 후 업데이트되지 않습니다.

  22. 22

    $ scope가 업데이트 된 후 ng-repeat가 정보를 업데이트하지 않음

  23. 23

    웹 서비스 동기화 후 ListView가 업데이트되지 않음

  24. 24

    SqliteDatabase에 항목을 삽입 한 후 ListView가 업데이트되지 않음

  25. 25

    angularjs보기가 $ http 이후에 업데이트되지 않음

  26. 26

    업데이트 된 NSTableCellView.textField가 테이블 표시에서 업데이트되지 않았습니다.

  27. 27

    링크 된 파일이 수정 된 후 systemd 서비스가 업데이트되지 않음

  28. 28

    DataGridView가 두 번째 행 이후에 업데이트되지 않습니다.

  29. 29

    DataGridView가 두 번째 행 이후에 업데이트되지 않습니다.

뜨겁다태그

보관