on
[안드로이드] Material Dropdown menu 쉽게 만드는 방법
[안드로이드] Material Dropdown menu 쉽게 만드는 방법
반응형
2021.12.12 - [안드로이드] - [안드로이드] custom spinner 만드는 방법
이번 시간에는 Material Design을 통해 Dropdown menu를 만들어 보겠습니다.
1. 라이브러리 등록
build.gradle(Module:프로젝트명:app)
dependencies 괄호 안에 아래 코드를 넣어주시면 됩니다.
implementation 'com.google.android.material:material:1.4.0'
2020.12.19 - [안드로이드] - [안드로이드]라이브러리 찾아 등록하는 방법
2. 테마 수정 themes.xml
( res -> value -> themes)
style 태그 속성 parent를 아래 코드로 변경해주시면 됩니다.
3. 아이템 리스트 화면 만들기 (item_list.xml)
4. 메인화면 구성 (activity_main.xml)
5. 메인코드 기능구현 (MainActivity.java)
import android.os.Bundle; import android.view.View; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.AutoCompleteTextView; import android.widget.TextView; import androidx.appcompat.app.AppCompatActivity; import com.google.android.material.textfield.TextInputLayout; public class MainActivity extends AppCompatActivity { TextInputLayout textInputLayout; AutoCompleteTextView autoCompleteTextView; TextView textShowItem; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); textInputLayout = findViewById(R.id.inputLayout); autoCompleteTextView = findViewById(R.id.text_item); textShowItem = findViewById(R.id.text_show_item); String[] items = {"item1", "item2", "item3", "item4", "item5"}; ArrayAdapter itemAdapter = new ArrayAdapter<>(MainActivity.this, R.layout.item_list, items); autoCompleteTextView.setAdapter(itemAdapter); autoCompleteTextView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView adapterView, View view, int position, long id) { textShowItem.setText((String)adapterView.getItemAtPosition(position)); } }); } }
6 실행화면
2021.12.11 - [안드로이드] - [안드로이드] 동적으로 스피너(Spinner)에 데이터 넣는 방법
2021.12.10 - [안드로이드] - [안드로이드] TextView 클릭 시 효과(ripple)주는 방법
2021.12.08 - [안드로이드] - [안드로이드] Material Design EditText 쉽게 만드는 방법
반응형
from http://aries574.tistory.com/157 by ccl(A) rewrite - 2021-12-13 13:01:16