티스토리 뷰
리스트뷰 예제
activity_main.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"
android:gravity="center_horizontal"
android:padding="30dp">
<ListView
android:id="@+id/l"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</LinearLayout>
list_item.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"
android:gravity="center_horizontal">
<TextView
android:id="@+id/lt"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="10dp"
android:textSize="20sp"/>
</LinearLayout>
MainActicity.java
- ArrayAdapter a = new ArrayAdapter(): 어댑터에 담을 데이터 집합 생성
- R.layout.list_item: 리스트 아이템에 대한 레이아웃 리소스 아이디
- R.id.lt: 리스트 아이템의 레이아웃 내텍스트뷰의 아이디
- list: 리스트뷰에 나타낼 리스트 값 배열
- setOnItemClickListener(): 화면에 표시된 리스트 목록 내 아이템을 클릭 시 이벤트
package com.example.test;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
String list[]={"한국","미국","중국","일본","영국","독일","프랑스","캐나다","오스트리아", "덴마크","이란","필리핀","인도네시아","브라질","네팔","이집트"};
ListView l = findViewById(R.id.l);
ArrayAdapter a = new ArrayAdapter(this, R.layout.list_item, R.id.lt, list);
l.setAdapter(a);
l.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Toast.makeText(getApplicationContext(), list[position]+" 클릭", Toast.LENGTH_LONG).show();
}
});
}
}



리스트뷰 예제 (no XML)
MainActicity.java
- android.R.layout.simple_list_item_1: 안드로이드 스튜디오 내에 기본적으로 내장된 리스트 아이템 리소스
package com.example.test;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
String list[]={"한국","미국","중국","일본","영국","독일","프랑스","캐나다","오스트리아", "덴마크","이란","필리핀","인도네시아","브라질","네팔","이집트"};
ListView l = new ListView(this);
ArrayAdapter a = new ArrayAdapter(this, android.R.layout.simple_list_item_1, list);
l.setAdapter(a);
l.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Toast.makeText(getApplicationContext(), list[position]+" 클릭", Toast.LENGTH_LONG).show();
}
});
setContentView(l);
}
}



'학업 > 모바일프로그래밍' 카테고리의 다른 글
[Android Studio] 리스트뷰 삭제 (0) | 2024.12.17 |
---|---|
[Android Studio] 웹페이지 이동 앱 (0) | 2024.12.17 |
[Android Studio] 액티비티 생명주기 (0) | 2024.12.17 |
[Android Studio] 지도 검색 앱 (0) | 2024.12.17 |
[Android Studio] 암시적 인텐트: 작업 불러오기(전화, 연락처, 인터넷, 지도) (0) | 2024.12.17 |
공지사항
링크