마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

Material Design 사용하려면 라이브러리를 따로 추가해야하나요?

0 추천
시작한지 얼마 안된 초보자입니다...디자인을 혼자 구현하기 힘들어하던 와중에

구글에서 지원하는 Material Design이라는 것이 존재하더라구요..

그래서 막 구글링을 하는데..긴가민가해 질문드립니다..
어떤분은 API 21(롤리팝?) 이후 버전이면 자동으로 쓸수 있다고 하는것 같고

또 어떤 사이트를보면 막 gradle에 뭘 추가해서 쓰는것 같던데 정확히는 어떤것인가요?
codeslave (3,940 포인트) 님이 2019년 5월 1일 질문

1개의 답변

+1 추천

사용하는 라이브러리마다 다르긴 합니다

dependencies {
    implementation 'com.android.support:recyclerview-v7:28.0.0'
}

와 같이 카드뷰를 사용하려면 해당 디펜던시를 지정해줘야 합니다.

롤리팝이후라면 애니메이션등 효과가 거의 무난하게 지원되고 그 이전버전이라면 약간 다르게 표현 됩니다.

https://developer.android.com/guide/topics/ui/layout/recyclerview

 

인절미옹 (200 포인트) 님이 2019년 5월 2일 답변
답변 감사합니다 죄송하지만 제가 시작한지 얼마안된 초보자라 몇가지 어이없는 질문좀 드리겠습니다..
1.material design이 구글에서 개발자들이 인터페이스를 쉽게 만들기 위해 만든 디자인 지침서? 같은 것이라고 하던데요. 그렇다면 각종 버튼,레이아웃,텍스트 등 각종 뷰를 만들어놓은 것을 소스?로 지원을 한다는 말인가요? ( 말씀하신 dependencies에 추가해서 사용하는 것이 material design 사용법 인가요?)

2.이런 디자인을 지원을 한다면 사용법 같은것을 좀 친절하게 알려주는 곳은 없나요..? 구글링해가며 보고는 있는데 다 개념에 대한 설명만 있지 사용법에 대한 설명은 없어서 material design이 그냥 디자인 지침같은것이고 디자인 사용법은 제공안하는 것인지 헷갈리기만 하네요...

3.material design을 검색하면서 알게된 사이트가 https://material.io/ 라는 사이트인데.. 이 사이트가 무엇인가가 많기는 한데.. 인절미옹님께서 가르쳐주신것처럼
dependencies를 추가하거나 그런내용은 정말 눈씻고 찾아봐도 찾을 수가 없던데...이 사이트는 그럼 목적이 뭔가요? 이런 디자인이 있으니 너희들이 알아서 만들어 써라! 이것인가요..?? 빨리 만들고 싶은데 이것을 배울만한곳이 없네요..ㅜ
늦은시간까지 고생이 많으십니다. 질문을 깔끔하게 잘해주셔서 감사합니다.
1. 마테리얼디자인이 무엇이냐고 하신다면 정확히는 가이드입니다. 코딩은 그다음 순서입니다.
디펜던시 말씀하신것은 해당 코드 라이브러리를 다운로드해서 가져온다고 생각하시면 될것입니다.

2. 사용법을 친절하게 알려주는곳은 사실 많습니다.
https://material.io/collections/getting-started/#01
말씀주신 material.io사이트에서도 각종 오에스별/언어별로 적용법이 나와있습니다.
그부분까지 아직 찾지 못하신거 같은데 위의 링크페이지에서 확인해보시길 바랍니다.
(위의 링크후 이동페이지는 밑과 같습니다.
Component tutorials 중 Android Material components for Java 101
https://codelabs.developers.google.com/codelabs/mdc-101-java/#1)

3.결국 1,2와 비슷한 질문인듯 싶습니다.
https://codelabs.developers.google.com/codelabs/mdc-101-java/#1
의 내용을 차례대로 진행하는 중에서도
api 'com.android.support:design:28.0.0-alpha3'
와 같은 해당소스의 디펜던시추가 항목이 존재하네요
저도 다시 한번 확인했습니다.

빨리 만들고 싶을수록 제공해주는 튜토리얼을 진행해보시는걸 추천합니다 물론 처음에는 간단해보이는걸 만져보고 감을 익히시고 나중에 취할지 버릴지 택하시는게 좋겠네요.

물론 더 빠를수 있는 방법은 누군가가 이미 만들어둔 좋은 오픈소스(혹은 공개소스)를 보시는것인데 그걸 찾고 질문자님이 이해하고 사용하는것에도 상당한 시간과 노력이 들어갈듯 합니다.

그래도 혹시나 흥미가 있으시다면 해당 앱같은 경우도 비교적 깔끔하게 만들어진 좋은 샘플이라고 생각합니다.
https://github.com/DroidKaigi/conference-app-2019
좋은 답변 정말 감사합니다. 결국 material design이라는 것이 구글에서 만든 디자인 지침서같은 것이지만 여러 디자인을 구글에서 만들어 놨고 이걸 라이브러리를 추가?해서 쓸 수 있고 이것에 대해 사용자가 또 변경할 수 있다~ 이것인거죠?! 예를들어
https://material.io/develop/android/components/material-button/
해당 링크에서 좌측 Component 들이 정의해 놓은 디자인?들이고(Android 부분에서 만들어 놓은 컴포넌트? 뷰? 들이 저게 다인가요?) 해당링크의 해당 페이지에서 Usage가 만들어 놓은 버튼들을 사용하는 방법이구요..(그런데 여기에는 이 버튼들이 어떤 디자인을 가지고 있는지는 안나와있어서 어떻게 해야할지 모르겠네요...ㅎㅎ일일이 xml파일 design탭에서 확인해야하나요?ㅎㅎ)
 대충 이렇게 이해했는데 맞는지는 잘모르겠습니다..

그리고 material.io 사이트 링크를 주시고 언어별로 적용법이 나와있다고 하셨는데 OS는 https://material.io/collections/developer-tutorials/#ios-objective-c 이부분인것같아서 알것같은데..언어별로는 어디에서 되어있는지는 잘모르겠습니다..

그리고 tutorial만으로는 material design의 사용법을 다 알기에는 조금 힘든것 같네요..용어 같은것이나 (예를들면 api 'com.android.support:design:28.0.0-alpha3' 이 의미하는 것이 무엇인지) 더 자세한 뷰의 사용법이라던지..튜토리얼은 딱 이렇게 이렇게 해라~라고만 되어있어서 material design을 사용함에 있어 이문 장이 무엇을 의미하는 것인지 등 좀 이해해가면서 하고 싶은데 그런것이 없어서 아쉽네요..

제가 너무 욕심을 내는 것일까요? 아니면 제가 머리가 나쁜것인지ㅠ..빨리하고는 싶은데 의욕만 넘쳐서 그런건지 이해하기가 조금은 어렵기도하네요..ㅠㅠ아무튼 답변은 정말 감사합니다 감사인사드리는게 너무 늦었네요 감사합니다...
...