기본적으로 안드로이드는 ListView를 기본적으로 제공한다.
리스트뷰가 무엇이냐면, 보면 Aㅏ 한다.
결과 :
구현법은 간단하다.
띄울 액티비티 xml 파일에 ListView 속성을 만든다.
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<ListView
android:id="@+id/list_view"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
</LinearLayout>
본 리스트값을 띄우기 위해서는 값과, 이 값을 넣어줄 어댑터가 필요하다.
안드로이드는 어댑터에 값을 매개변수로 제시하면 이 값을 스스로 계산해서 넣어주는 특성이 있다.
따라서, adapter에 3개의 매개변수를 필요로 하는데,
1) 이 값을 띄울 컨텍스트
2) 이 값을 띄울 형태 (이건 안드로이드가 가지고 있는 고유의 xml을 이용한다.)
3) 출력할 값(배열)
따라서, 코드가
MainActivity.java
package com.mary.movieapp;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Context;
import android.opengl.EGLExt;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import java.util.Arrays;
import java.util.List;
public class MainActivity extends AppCompatActivity {
private static final String TAG = "Main_Activity";
private Context mContext=MainActivity.this;
private ListView listView;
private ArrayAdapter arrayAdapter;
List<String> items = Arrays.asList(
"히어로즈","24시","로스트","로스트룸","빅뱅이론","프렌즈","덱스터","글리","히어로즈","24시","로스트","로스트룸","빅뱅이론","프렌즈","덱스터","글리"
);
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listView=findViewById(R.id.list_view);
arrayAdapter=new ArrayAdapter(mContext, android.R.layout.simple_expandable_list_item_1,items);
listView.setAdapter(arrayAdapter);
}
}
만 하면 된다.
그러나, 우리는 이 안드로이드가 제공하는 것 이외에 어댑터와 디자인을 새로 지정할 수도 있다. 즉, 이 리스트도 커스텀이 가능하다.
반응형
'Android' 카테고리의 다른 글
안드로이드 스튜디오,JAVA] 커스텀 리스트뷰에 이미지 넣기 (0) | 2020.07.23 |
---|---|
안드로이드 스튜디오, JAVA] 커스텀 리스트뷰(ListView) 만들기 (0) | 2020.07.22 |
안드로이드 스튜디오, JAVA] 토스트, 스낵바, 대화상자 (0) | 2020.07.22 |
안드로이드 스튜디오, JAVA] Material Navigation Drawer을 이용하여 네비게이션으로 액티비티 전환 (0) | 2020.07.22 |
안드로이드 스튜디오,JAVA] 액티비티 변경에 따른 스택관리 (0) | 2020.07.22 |