2021.12.12 - [안드로이드] - [안드로이드] custom spinner 만드는 방법
이번 시간에는 Material Design을 통해 Dropdown menu를 만들어 보겠습니다.
build.gradle(Module:프로젝트명:app)
dependencies 괄호 안에 아래 코드를 넣어주시면 됩니다.
implementation 'com.google.android.material:material:1.4.0'
2020.12.19 - [안드로이드] - [안드로이드]라이브러리 찾아 등록하는 방법
( res -> value -> themes)
style 태그 속성 parent를 아래 코드로 변경해주시면 됩니다.
<style name="Theme.MaterialExam" parent="Theme.MaterialComponents.DayNight.DarkActionBar">
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Sample"
android:padding="16dp"
android:layout_margin="2dp">
</TextView>
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity">
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/inputLayout"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.ExposedDropdownMenu"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:hint="아이템을 선택하세요."
android:padding="20dp">
<AutoCompleteTextView
android:id="@+id/text_item"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="none" />
</com.google.android.material.textfield.TextInputLayout>
<TextView
android:id="@+id/text_show_item"
android:layout_width="match_parent"
android:layout_height="60dp"
android:layout_marginTop="20dp"
android:gravity="center"
android:text="아이템"
android:textSize="20sp" />
</LinearLayout>
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<String> 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));
}
});
}
}
2021.12.11 - [안드로이드] - [안드로이드] 동적으로 스피너(Spinner)에 데이터 넣는 방법
2021.12.10 - [안드로이드] - [안드로이드] TextView 클릭 시 효과(ripple)주는 방법
2021.12.08 - [안드로이드] - [안드로이드] Material Design EditText 쉽게 만드는 방법
[안드로이드] Material Dialog Custom 쉽게 만드는 방법 (0) | 2021.12.15 |
---|---|
[안드로이드] Material Dialog [ Alert dialog , Simple dialog , Confirmation dialog ] 쉽게 만드는 방법 (0) | 2021.12.14 |
[안드로이드] Custom Spinner 쉽게 만드는 방법 (0) | 2021.12.12 |
[안드로이드] 동적으로 스피너(Spinner)에 데이터 넣는 방법 (0) | 2021.12.11 |
[안드로이드] TextView 클릭 시 효과(ripple)주는 방법 (0) | 2021.12.10 |
댓글 영역