모바일/android

[안드로이드프로그래밍6판] 6장 자동완성 텍스트뷰(고대로 베껴 봄)

hatch 2021. 10. 17. 23:16
728x90
반응형
자동완성 텍스트뷰(한번 따라 해봄.)

 

아직 제네릭클래스, 타입매개변수 제대로 안 배움. 경험상 시도해봄.

학습 후 혼자 코딩해볼 것.

 

<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">
<AutoCompleteTextView
    android:id="@+id/AutoTV"
    android:hint="자동완성텍스트뷰"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"/>
    <MultiAutoCompleteTextView
        android:id="@+id/MultiTV"
        android:hint="멀티자동완성텍스트뷰"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"/>
</LinearLayout>

<java 코드>

package com.cookandroid.myself6_2;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.AutoCompleteTextView;
import android.widget.ListAdapter;
import android.widget.MultiAutoCompleteTextView;

public class MainActivity extends AppCompatActivity {

    AutoCompleteTextView autoTV;
    MultiAutoCompleteTextView multiTV;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        autoTV = findViewById(R.id.AutoTV);
        multiTV = findViewById(R.id.MultiTV);

        String[] items = {"CSI-뉴욕", "CSI-라스베가스", "CSI-마이애미", "Friends", "Fringe", "Lost"};

        ArrayAdapter<String> adpter = new ArrayAdapter<String>(this,
                android.R.layout.simple_dropdown_item_1line, items);
        autoTV.setAdapter(adpter);
        multiTV.setAdapter(adpter);

        MultiAutoCompleteTextView.CommaTokenizer token = new MultiAutoCompleteTextView.CommaTokenizer();
        multiTV.setTokenizer(token);
    }
}