IT/Android Studio

Android Studio s24ListViewDemo02 (ArrayList을 이용한 ListView)

Millennials 2020. 7. 2. 14:23

1)activity_main.xml

2)MainActivity.java

package kr.android.s24listviewdemo02;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.Toast;

import java.util.ArrayList;

public class MainActivity extends AppCompatActivity {

    ArrayList<String> todoItems;
    ArrayAdapter<String> adapter;
    ListView myListView;
    EditText myEditText;
    Button btn;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        myEditText = (EditText)findViewById(R.id.myEditText);
        btn = (Button)findViewById(R.id.btn);
        myListView = (ListView)findViewById(R.id.listView);

        //데이터 저장소 생성
        todoItems = new ArrayList<String>();
        //어댑터 생성
        adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,todoItems);
        //ListView에 어댑터 등록
        myListView.setAdapter(adapter);

    }
    //이벤트 핸들러
    public void onClick(View view) {

        //EditText에 입력한 값 반환
        String text = myEditText.getText().toString();
        if(text.length()>0){//데이터를 입력했을 경우
            todoItems.add(0,text);
            //신규 데이터를 ListView에 반영
            adapter.notifyDataSetChanged();
            //EditText 초기화
            myEditText.setText("");

        }else{//데이터를 입력하지 않았을 경우

            Toast.makeText(this,"일정을 입력하세요",Toast.LENGTH_SHORT).show();
        }
    }
}

반응형