전체 글126 [Kotlin]잔디 수확 시스템 만들기(GrassActivity 마무리) 자신의 잔디 정보를 보기만 한다는 것은 너무 심심하지 않을까 생각했다. 따라서 플레이 시간에 따라 잔디에서 돈을 얻을 수 있는 수확 시스템을 만들기로 결정했다. 다음과 같이 시스템을 정하였다. 1. 각각의 잔디를 클릭하면 각 잔디의 정보와 쌓인 돈을 볼 수 있다. 2. 잔디가 빈곳에서는 돈을 얻을 수 없다. 3. 플레이 시간에 따라 각각의 잔디에 돈이 차오른다. 4. 잔디의 색깔(contribution 수)에 따라 최대 저장 액수를 설정한다. 5. 수확 버튼을 누르면 돈이 해당 달의 잔디들로부터 빠져나와 내 지갑에 들어온다. 6. 잔디의 돈은 초기화 되며 다시 차오르기 시작한다. 먼저 각각의 잔디의 정보를 띄어주는 창을 디자인 했다. 각각의 잔디 버튼을 누르면 다음과 같은 디자인의 창을 띄우게끔 할 것이.. 2022. 9. 8. [Kotlin] Fragment 동적 생성 후 잔디 형태 구현하기 예전에 이디야 앱을 따라 만들어 본 적이 있다. TabLayout에는 4개의 Tab Item 있고, 이에 따라 4개의 Fragment를 만든 후, 뷰페이저로 처리를 해두었다. 각 Tab Item을 클릭 시, 또는 화면 슬라이드 시 해당 Fragment가 교체되게끔 작동한다. 앱을 다 만든 후 아차 싶었다. "만약 메뉴 카테고리가 여러 개가 생기면 그때마다 Fragment를 추가해줘야 하나?" 설계를 잘못했다는 것을 깨달았고, 해결방법을 생각해보았다. 분명 서버에서 카테고리와 그에 따른 메뉴 정보들을 가져올 것이므로 해당 Activity에서 리스트로 정보들을 저장한 후, 카테고리 수 만큼 Fragment를 동적으로 생성하고 해당 Fragment에 메뉴 리스트를 넘겨주는 방식을 선택하기로 했었다. 만들려는 .. 2022. 9. 8. [Kotlin] GridLayout에 동적으로 addView 해주기 저번 포스팅에는 총 3개 배열에 데이터를 나눠 저장했었다. // 해당 월의 날짜 정보 및 잔디 정보 var numberOfDateArray = ArrayList() var grassColorArray = ArrayList() var contributionCountArray = ArrayList() 해당 데이터들에 따라 다르게 이미지를 뷰에 씌워 GridLayout에 할당해줄 것이다. 우선 디폴트 형태인 빈 잔디 이미지를 가진 커스텀 뷰를 만들었다. 다음은 위의 커스텀뷰들이 들어갈 fragment의 xml 파일 코드이다. 왜 xml 파일이 view_pager 인지는 나중에 다루겠다. color에 따른 잔디 이미지를 만들었다. 이제 GridLayout에 뷰를 할당해준다. fun gridLayoutSettin.. 2022. 9. 3. [Kotlin] GitHub 잔디(contribution)정보 나누고 할당하기 게임 이름이 "개발자 키우기" 이고 GitHub 계정으로 로그인을 해야하는 만큼, 게임 속에서 내 잔디 모양을 확인해 볼 수 있어야 한다고 생각했다. 지난 시간에 받아왔던 Contribution 데이터를 이용하여 깃허브 잔디 시스템을 구현해보려한다. val githubData = apolloClient.query(GithubCommitQuery("joh9911")).execute() var githubListData = githubData.data?.user?.contributionsCollection?.contributionCalendar?.weeks Log.d("githubData", "Success ${githubListData}") Log.d("해당 정보의 사이즈","${githubListData.. 2022. 9. 3. [Kotlin] GitHub 잔디(contribution) 정보 받아오기 프로젝트 설계 후 코딩을 시작하기 전, 먼저 확인해야 하는 부분이 있었는데.. 바로 사용자의 깃허브 계정을 통해 contribution 정보를 받아오는 것이다. 듣기로 GitHub API가 따로 있어 쉬울 줄 알았다. 막상 구글링을 해보니, GitHub의 여러 정보들을 가져오는 방법들은 많았지만 GitHub의 잔디 정보를 가져오는 방법은 찾기가 힘들었다. 그러다 GitHub GraphQL API를 통해 가져올 수 있다는 사실을 알게되었다. How to retrieve contribution graph data from the GitHub API github contribution graph medium.com GraphQL에 대한 것은 종종 들어보긴 했지만, Kotlin으로 사용하는 사례는 본 적이 없었.. 2022. 8. 31. [Kotlin] 키우기 게임 만들기 코틀린 과정을 공부해본 후, 어떤 것을 만들어볼까 고민한 끝에 게임을 만들기로 결정하였다. 개발자 키우기 🔵 Notion 사용 시 기억할 것 iris-fruit-d94.notion.site 게임 이름은 "개발자 키우기"로 정했다. 제목에 걸맞게 게임 예상 유저층을 개발자로 설정하고, 깃허브 계정을 통해 게임에 접속할 수 있도록 하였다. 기존의 여러 키우기 게임 방식과 동일하게 화면 터치를 통해 게임 머니를 벌 수 있고, 그외에 문제 풀이, 수확 시스템, 연봉 시스템 등 돈벌이에 필요한 여러 옵션들을 추가하였다. 이 프로젝트를 진행하면서 막혔던 부분과, 이에 대한 해결 방법, 깨달은 점, 여러 삽질들을 정리해보려고 한다. GitHub - joh9911/raise_developer Contribute to .. 2022. 8. 31. 이전 1 ··· 13 14 15 16 다음