이번 시간에는 간단한 할 일 목록(ToDoList)
만드는 방법을 알아보겠습니다.
file name: list_item
<?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:padding="20dp"
android:text="textView"
android:textAppearance="@style/TextAppearance.AppCompat.Large"
android:textStyle="bold">
</TextView>
2022.01.01 - [안드로이드] - [안드로이드 스튜디오] 레이아웃 추가하는 방법
- 설명 -
1. 리스트뷰에 할 일 목록을 보여줍니다.
2. 에디트 텍스트에 할 일을 쓰고 버튼으로
할일을 추가합니다.
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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"
tools:context=".MainActivity">
<LinearLayout
android:id="@+id/bottom_section"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:padding="10dp">
<EditText
android:id="@+id/edit_text"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginRight="10dp"
android:layout_weight="1" />
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/add_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="추가" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@id/bottom_section"
android:background="#eee">
<ListView
android:id="@+id/list_view"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
</RelativeLayout>
- 설명 -
1. 할일을 ArrayList에 등록하고, ArrayList는 어뎁터에 적용
2. 어뎁터는 리스트뷰에 적용이 되어, 할일을 등록하면
자동으로 화면에 할 일이 보이게 됩니다.
3. 리스트 아이템을 클릭하면, 취소 줄이 생깁니다.
public class MainActivity extends AppCompatActivity {
ArrayList<String> toDoList;
ArrayAdapter<String> adapter;
ListView listView;
EditText editText;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//초기화
toDoList = new ArrayList<>();
adapter = new ArrayAdapter<String>(this, R.layout.list_item, toDoList);
listView = findViewById(R.id.list_view);
editText = findViewById(R.id.edit_text);
//어뎁터 적용
listView.setAdapter(adapter);
//할일추가 버튼 이벤트
Button addBtn = findViewById(R.id.add_btn);
addBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
addItemToList();
}
});
//리스트 아이템 클릭 했을때 이벤트
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
TextView textView = (TextView) view;
//취소선 넣기
textView.setPaintFlags(textView.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG);
}
});
}//onCreate
//할일 추가
public void addItemToList(){
//아이템 등록
toDoList.add(editText.getText().toString());
//적용
adapter.notifyDataSetChanged();;
//입력창 초기화
editText.setText("");
}
}//MainActivity
2022.03.16 - [안드로이드] - [안드로이드] Firebase Storage 이미지 업로드 part1
2022.03.17 - [안드로이드] - [안드로이드] Firebase Storage 이미지 리스트 part2
2022.03.18 - [안드로이드] - [안드로이드] 이미지 원형으로 쉽게 표현하는 방법
[안드로이드] ToDoList SQLite 만드는 방법 part2 - 조회, 등록 (0) | 2022.03.21 |
---|---|
[안드로이드] ToDoList SQLite 만드는 방법 part1 - 화면과 DB (0) | 2022.03.20 |
[안드로이드] 이미지 원형으로 쉽게 표현하는 방법 (0) | 2022.03.18 |
[안드로이드] Firebase Storage 이미지 리스트 part2 (0) | 2022.03.17 |
[안드로이드] Firebase Storage 이미지 업로드 part1 (2) | 2022.03.16 |
댓글 영역