본문 바로가기

프로젝트1

(11)
[안드로이드][프로젝트1]SharedPreferences를 이용하여 인트로 화면에서 바로 홈으로 넘어가기 기존 방식은 인트로 화면-> 웰컴 화면-> 로그인 화면 -> 홈 순으로 들어가는 방식이다. 그러나 나는 로그인 화면에서 아이디 저장에 체크가 되어 있다면 다음 앱 시작시, 인트로 화면 -> 홈 방식으로 들어가게 하고 싶었다. 내가 한 방법은 다음과 같다. 1. 레이아웃에 체크박스 추가하기. 2. 로그인 화면 Activity에 다음과 같이 추가한다. CheckBox checkBox; SharedPreferences appData; private boolean saveLoginData; private String id; private String pwd; 3. onCreate에서 다음과 같이 추가한다. checkBox = findViewById(R.id.checkBox); //설정값 불러오기 appData ..
[안드로이드][프로젝트1] 내가 MPAndroid X axis 값을 날짜와 시간으로 변환한 방법(firebase 연동) 1. DataPoint 클래스의 xValue를 long값으로 바꿔준다. public class DataPoint { long xValue; int yValue; public DataPoint(long xValue, int yValue) { this.xValue = xValue; this.yValue = yValue; } public DataPoint(){ } public long getxValue() { return xValue; } public int getyValue() { return yValue; } } 참고:https://youtu.be/WcwhZztfY2g 2. SimpleDateFormat 지정해주자. SimpleDateFormat sdf = new SimpleDateFormat("MM-dd..
[프로젝트1][안드로이드] 내가 Firebase와 연동한 상태로 MPAndroidchart 를 이용하여 Line Chart를 만든 법 0. gradle 환경 설정은 필수. 1.RegisterActivity와 MainActivity(로그인 액티비티)에 다음 문구를 추가한다. hashMap.put("ChartValues",""); // will add later 2. fragment_calendar.xml 레이아웃을 다음과 같이 짜준다. 3. DataPoint 클래스를 만들어준다. public class DataPoint { int xValue, yValue; public DataPoint(int xValue, int yValue) { this.xValue = xValue; this.yValue = yValue; } public DataPoint(){ } public int getxValue() { return xValue; } publi..
[안드로이드][프로젝트1] MPAndroidChart를 활용한 LineChart 사용 1. settings.gradle에 다음 코드를 추가하고 싱크를 맞춰준다. maven { url 'https://jitpack.io' } 2. build.gradle(모듈)에 다음 코드를 추가하고 싱크를 맞춰준다. implementation 'com.github.PhilJay:MPAndroidChart:v3.1.0' 3. layout의 xml 파일에 다음 코드를 추가한다. 4. activity에 다음 코드를 추가한다. import android.graphics.Color; import android.os.Bundle; import androidx.appcompat.app.AppCompatActivity; import com.github.mikephil.charting.charts.LineChart; im..
[프로젝트1] DeleteAccount한 방법 1. HomeActivity에 다음과 같이 써준다. @Override public boolean onNavigationItemSelected(@NonNull MenuItem item) { //handle item clicks switch (item.getItemId()) { //생략 case R.id.menu_deleteAccount: showDeleteDialog(); return true; } return false; } 2. values -> strings에 다음과 같이 넣어준다. Yes Cancel 3. 다이얼로그를 불러준다. private void showDeleteDialog(){ //show dialog containing options camera and Gallery to pick the..
[프로젝트1][오류일지]19. 헤더에 프로필 정보 불러오는 방법 문제점: HomeFragment에 프로필 정보를 불러온 것과 같이 HomeActivity안에 있는 navigationView안에 있는 Header에 프로필 정보를 불러오고 싶었는데, HomeFragment에서 했던 방법과 동일하게 했을 때 오류 발생. 결론: getHeaderView(0)을 쓰자! tvName_header = navigationView.getHeaderView(0).findViewById(R.id.tvName_header); tvEmail_header = navigationView.getHeaderView(0).findViewById(R.id.tvEmail_header); ivProfile_header = navigationView.getHeaderView(0).findViewById(R..
[오류일지][프로젝트1]18. 유저 리스트가 안 나왔던 이유 위의 사진은 정상적으로 작동했을 때의 Users 리스트 모습니다. 그런데 이걸 해결하기 전에 유저리스트가 뜨질 않았다. 왜 그런 걸까 살펴보던 중, firebase realtimebase에서 제대로 저장이 안 된 계정(데이터)를 발견했다. 알고보니 데이터가 저장이 제대로 안 된 것이 영향이 있었던 것이다. 그 계정을 삭제하니 위와같이 잘 작동하게 되었다.
[프로젝트1] 내가 로그인Activity를 구현한 방법 전체 코드 더보기 package com.example.grapegraph; import androidx.annotation.NonNull; import androidx.appcompat.app.AppCompatActivity; import android.app.ProgressDialog; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.view.WindowManager; import android.widget.Button; import android.widget.EditText; import android.widget.ImageView; import android.widget.T..
[프로젝트1] 내가 인트로를 만든 방법 1. 안드로이드 gif 이미지 처리 1) Gradle에 모듈 추가 //gif implementation 'com.github.bumptech.glide:glide:4.11.0' annotationProcessor 'com.github.bumptech.glide:compiler:4.11.0' 2) IntroActivity에서 적용 ImageView intro_logo = (ImageView)findViewById(R.id.intro_logo); Glide.with(this).load(R.drawable.calendar).into(intro_logo); 2. Handler 적용 public class IntroActivity extends AppCompatActivity { @Override protecte..
[프로젝트1] android firebase sign out 기능 구현 사용자를 로그아웃 시키려면 signOut()을 호출하면 된다. FirebaseAuth.getInstance().signOut(); 참고: https://firebase.google.com/docs/auth/android/custom-auth?hl=ko Android에서 커스텀 인증 시스템을 사용하여 Firebase에 인증 | Firebase Documentation Join Firebase at Google I/O 2022 live from Shoreline Amphitheatre and online May 11-12. Register now 의견 보내기 Android에서 커스텀 인증 시스템을 사용하여 Firebase에 인증 사용자가 정상적으로 로그인할 때 커스텀 서명 firebase.google.com..