[Android] 안드로이드 스튜디오 ListView 만들기

    xml파일

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    >
    
    <ListView
    android:id="@+id/listView"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="1"
    />
    
    <Button
    android:id="@+id/button"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text = "Add"
    android:textColor="#000000"
    android:textSize="28dp"
    android:gravity="center"
    />
    <Button
    android:id="@+id/button1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text = "Del"
    android:textColor="#000000"
    android:textSize="28dp"
    android:gravity="center"
    />
    
    </LinearLayout>

     

    자바 파일

    package com.example.listview;
    
    import android.support.v7.app.AppCompatActivity;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.ArrayAdapter;
    import android.widget.Button;
    import android.widget.ListView;
    
    import java.util.ArrayList;
    
    public class MainActivity extends AppCompatActivity {
    
    	private ArrayList<String> arrayList;
    	private ListView listView;
    	private ArrayAdapter<String> adapter;
    
    	@Override
    	protected void onCreate(Bundle savedInstanceState) {
    		super.onCreate(savedInstanceState);
    		setContentView(R.layout.activity_main);
    
    		arrayList = new ArrayList<String>();
    
    		listView = (ListView) findViewById(R.id.listView);
    
    		adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, arrayList);
    
    		listView.setAdapter(adapter);
    
    		Button button = findViewById(R.id.button);
    		Button button1 = findViewById(R.id.button1);
    		button.setOnClickListener(new View.OnClickListener() {
    			@Override
    			public void onClick(View v) {
    				int number = arrayList.size() + 1;
    				arrayList.add("test" + number);
    				adapter.notifyDataSetChanged();
    				if (number > 0)
    					listView.setSelection(number - 1);
    			}
    		});
    		button1.setOnClickListener(new View.OnClickListener() {
    			@Override
    			public void onClick(View v) {
    				int number = arrayList.size();
    				arrayList.remove("test" + number);
    				adapter.notifyDataSetChanged();
    				if (number > 0)
    					listView.setSelection(number);
    			}
    		});
    	}
    }
    

     

    ADD부분을 누르게 되면 test가 생성

    DEL 부분을 누르게 되면 맨마지막에 생성된 부분 삭제

    댓글

    Designed by JB FACTORY