안드로이드 스튜디오 ListView 2 (이벤트 처리)
안드로이드 스튜디오반응형
토스트 메세지
package com.example.listview;
import androidx.appcompat.app.AppCompatActivity;
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 java.util.ArrayList;
public class MainActivity extends AppCompatActivity {
ListView listView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listView = findViewById(R.id.listview);
final String[] fruits = {"사과","딸기","바나나","포도","멜론","키위","오렌지"};
final ArrayAdapter<String> adapter = new ArrayAdapter<>(this,android.R.layout.simple_list_item_single_choice, fruits);
listView.setAdapter(adapter);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
String item = fruits[position];
Toast.makeText(getApplicationContext(), fruits[position] + " 선택", Toast.LENGTH_SHORT).show();
}
});
}
}
(ListActitvity 상속)
package com.example.listview;
import androidx.appcompat.app.AppCompatActivity;
import android.app.ListActivity;
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 java.util.ArrayList;
public class MainActivity extends ListActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// setContentView(R.layout.activity_main);
String[] fruits = {"사과","딸기","바나나","포도","멜론","키위","오렌지", "아보카도", "레몬", "체리", "망고"};
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, fruits);
setListAdapter(adapter);
}
@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
String item = (String) getListAdapter().getItem(position);
Toast.makeText(this, item + " 선택", Toast.LENGTH_SHORT).show();
}
}



라디오 버튼 선택 되기
package com.example.listview;
import androidx.appcompat.app.AppCompatActivity;
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 java.util.ArrayList;
public class MainActivity extends AppCompatActivity {
ListView listView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listView = findViewById(R.id.listview);
final String[] fruits = {"사과","딸기","바나나","포도","멜론","키위","오렌지"};
final ArrayAdapter<String> adapter = new ArrayAdapter<>(this,android.R.layout.simple_list_item_single_choice, fruits);
listView.setAdapter(adapter);
listView.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
String item = fruits[position];
Toast.makeText(getApplicationContext(), fruits[position] + " 선택", Toast.LENGTH_SHORT).show();
}
});
}
}



여러개 체크
package com.example.listview;
import androidx.appcompat.app.AppCompatActivity;
import android.app.ListActivity;
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 java.util.ArrayList;
public class MainActivity extends AppCompatActivity {
ListView listView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listView = findViewById(R.id.listview);
final String[] fruits = {"사과","딸기","바나나","포도","멜론","키위","오렌지"};
final ArrayAdapter<String> adapter = new ArrayAdapter<>(this,android.R.layout.simple_list_item_checked, fruits);
listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
listView.setAdapter(adapter);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
String item = fruits[position];
Toast.makeText(getApplicationContext(), item + " 선택", Toast.LENGTH_SHORT).show();
}
});
}
}


선택된 항목 모두 토스트 메세지 뜨게 하기
package com.example.listview;
import androidx.appcompat.app.AppCompatActivity;
import android.app.ListActivity;
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 java.util.ArrayList;
public class MainActivity extends AppCompatActivity {
ListView listView;
String name="";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listView = findViewById(R.id.listview);
final String[] fruits = {"사과","딸기","바나나","포도","멜론","키위","오렌지"};
final ArrayAdapter<String> adapter = new ArrayAdapter<>(this,android.R.layout.simple_list_item_checked, fruits);
listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
listView.setAdapter(adapter);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
if (listView.isItemChecked(position)){
name = name + fruits[position]+" ";
}
else
name = name.replace(fruits[position],"");
Toast.makeText(getApplicationContext(), name + " 선택", Toast.LENGTH_SHORT).show();
}
});
}
}



반응형
'안드로이드 스튜디오' 카테고리의 다른 글
| 안드로이드 스튜디오 CustomListView (0) | 2020.05.02 |
|---|---|
| 안드로이드 스튜디오 ListView 3 (추가, 삭제, 수정) (0) | 2020.05.02 |
| 안드로이드 스튜디오 List View (0) | 2020.05.02 |
| 안드로이드 스튜디오 간단 그림판 만들기 (0) | 2020.04.26 |
| 안드로이드 스튜디오 그래픽 2 (0) | 2020.04.26 |