마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

android ListView 값 변경ㅠㅠ

0 추천

ListView에 뿌려져있는 또는 추가하는 값을 변경하는 문제입니다.

제가 리스트에서 position 2까지는 arrayList로 0~2번째까지는 ("ㅁ","ㅁ","ㅁ"); 이렇게 임의로 뿌려놨구요

나머지 밑으로 추가되는 리스트는 Intent로 Activity이동하여 이동한 페이지에서 EditText로 값을 입력받아서 뿌려주게했습니다. 입력한 3개의 값중 맨 위에 입력한 title만 리스트로 보여지고 , 리스트 클릭시 Dialog로 입력받은값3개가 보여지며, 밑에는 버튼으로 수정 확인 을 만들어줬구요.

확인 클릭시, Dialog는 꺼지고 '수정'시 새로운 Dialog가 뜨면서 EditText 3개가 뜹니다. 그럼 여기서 값을 입력받아 본래의 ListView값이 새로 입력받은 값으로 바껴야되는 문제입니다ㅠㅠ.....쉽지가 않네요...도와주시면 감사합니다..


 

쮸뿌쮸뿌 (2,470 포인트) 님이 2014년 2월 25일 질문
---------- 다른 Activity에서 값을 받아오는 부분---------
@Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        // TODO Auto-generated method stub
        super.onActivityResult(requestCode, resultCode, data);
       
        if(resultCode == RESULT_OK){
            if(requestCode == ADD_REQUEST_CODE){
                //추가 코드
                //ArrayList<String> Items1 = new ArrayList<String>();
               
                String title = data.getStringExtra("title");
                String writer = data.getStringExtra("writer");
                String company = data.getStringExtra("company");
               
                BookInfo_Model bi = new BookInfo_Model(title, writer, company);
                bim.add(bi);
                items.add(bi.getName());
                adapter.notifyDataSetChanged();
            }

--------------------새로 뜬 Dialog에서 EditText로 값을 넣는 부분---------
.setNegativeButton(R.string.modify_btn, new DialogInterface.OnClickListener() {        //수정버튼 글릭시 다이얼로그 띄우기
               
                @Override
                public void onClick(DialogInterface dialog, int which) {
                    // TODO Auto-generated method stub
                   
                    Context ctx = getApplicationContext();
                    LayoutInflater inflater = (LayoutInflater)ctx.getSystemService(LAYOUT_INFLATER_SERVICE);
                    View layout = inflater.inflate(R.layout.edit_dialog, null);
                   
                    AlertDialog.Builder alertDlg2 = new AlertDialog.Builder(MainActivity.this);
                    alertDlg2.setTitle("수정하기");
                    alertDlg2.setIcon(android.R.drawable.ic_input_get);
                    alertDlg2.setView(layout);
                   
                    alertDlg2.setPositiveButton( R.string.modify_btn2, new DialogInterface.OnClickListener()
                    {
                         @SuppressLint("CutPasteId")
                        @Override
                         public void onClick( DialogInterface dialog, int which ) {
                           
                            EditText addtitle2 = (EditText) findViewById(R.id.Edit_writer);
                             EditText addwriter2 = (EditText) findViewById(R.id.Edit_writer);
                             EditText addcompany2 = (EditText) findViewById(R.id.Edit_company);

                             String title2 = addtitle2.getText().toString();
                             String writer2 = addwriter2.getText().toString();
                             String company2 = addcompany2.getText().toString();
                            
                             items.add(title2);
                             adapter.notifyDataSetChanged();

1개의 답변

0 추천
질문을 이해 못하겠....네요

 

그니까 에딧텍스트에 입력한 값으로 리스트 값을 전부 바꾸는라면... 그냥 item 을 클리어 하시고 해당 데이터를 다 add하시면 되고..

하나만 바꿔주는거라면 item에서 바꿀 위치 데이터 바꿔치기 해서 노티 하시면 될듯 한데여..ㄸ
정품인증 (1,750 포인트) 님이 2014년 2월 26일 답변
...