ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 헷갈렸던 list아이템 클릭 확실히 알기
    program_language 및 궁금한것/Android Studio 2019. 2. 24. 13:30

    헷갈렸었지만 이제 adapter사용법을확실히 알수 있겠다.



    package com.example.list;
    import android.support.v7.app.AppCompatActivity;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.AdapterView;
    import android.widget.ArrayAdapter;
    import android.widget.Button;
    import android.widget.ListView;
    public class MainActivity extends AppCompatActivity implements View.OnClickListener, AdapterView.OnItemClickListener {
    // 리스트 뷰에 장착할 더미
    String[] movieArr = {"어벤져스", "극한직업", "증인", "워킹데드", "아이언맨", "비긴어게인", "토르", "인셉션", "헐크", "트루먼쇼"};
    String[] bookArr = {"어린왕자", "신과함께", "삼국지", "초한지", "그리스로마신화"};
    private Button btn_movie, btn_book;
    private ListView list_book, list_movie;
    // 어댑터
    // 제너릭스 - 제한을 거는것!(object를 숫자나 문자로 변환해 주는것)
    private ArrayAdapter<String> adapter_movie, adapter_book;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    //객체 얻기
    btn_book = findViewById(R.id.btn_book);
    btn_movie = findViewById(R.id.btn_movie);
    list_book = findViewById(R.id.list_book);
    list_movie = findViewById(R.id.list_movie);
    // 어댑터를 이용 데이터 장착
    // (어디서, 한줄당 아이템 하나씩 보여줄래, 데이터는 뭘 장착?)
    adapter_movie = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, movieArr);
    adapter_book = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, bookArr);
    list_movie.setAdapter(adapter_movie);
    list_book.setAdapter(adapter_book);
    //이벤트 부여
    btn_book.setOnClickListener(this);
    btn_movie.setOnClickListener(this);
    list_movie.setOnItemClickListener(this);
    list_book.setOnItemClickListener(this);
    }
    @Override
    public void onClick(View v) {
    switch (v.getId()) {
    case R.id.btn_movie:
    list_movie.setVisibility(View.VISIBLE);
    list_book.setVisibility(View.GONE);
    break;
    case R.id.btn_book:
    list_movie.setVisibility(View.GONE);
    list_book.setVisibility(View.VISIBLE);
    break;
    }
    }
    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
    }
    }


    xml.

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context=".MainActivity">
    <TextView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="#FFEB3B"
    android:gravity="center"
    android:text="리스트 뷰 예제"
    android:textSize="25dp" />
    <Button
    android:id="@+id/btn_movie"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="영화 추천 목록" />
    <Button
    android:id="@+id/btn_book"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="도서 추천 목록" />
    <ListView
    android:id="@+id/list_movie"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#EEE595"
    android:listSelector="#CE5B5B" />
    <ListView
    android:id="@+id/list_book"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#84D3F8"
    android:listSelector="#CE5B5B"
    android:visibility="gone" />
    </LinearLayout>


    반응형

    'program_language 및 궁금한것 > Android Studio' 카테고리의 다른 글

    SQLite 간단 설명  (0) 2019.03.10
    상단 메뉴 만들기  (0) 2019.03.09
    web view 사용방법  (0) 2019.02.24
    Firebase란?  (0) 2018.12.09
    안드로이드 Error while Installing APKs  (0) 2018.10.11

    댓글

Designed by Tistory.