Android11 안드로이드 앱의 개발 순서 안드로이드 앱의 개발 순서에 대해서 정리를 할 필요를 느껴 내가 직접 경험하며 만든 안드로이드 앱 개발 방법론을 정리해본다. ( 필자의 다음 방법론은 간단한 앱, 즉 혼자서도 만들 수 있는 수준의 앱에 한한 방법론이다 ) 일단 앱을 만들기 이전에 어떤앱(상품)을 만들것인가 에 대한 나만의 내 업의 본질적 가치가 정립되어 있어야만 한다. ( 어떤 앱을 개발하면 좋을까에 대한 이 내용은 다음에 다루도록 하겠다 ) 기획 일단 어떤 앱을 만들지 결정했으면 가장먼저 시작해야할 것은 바로 기획 단계 "기획은 내 앱이 나아갈 방향을 설정하는 단계" 즉 첫 단추를 끼우는 단계로 아주 중요하다 이 기획 단계에 어떻게 하느냐에 따라 앱이 만들어진 후의 결과가 180도 달라진다 내가 왜 위에서 "일단 앱을 만들기 이전에 어.. 2021. 3. 21. Handler와 재귀함수를 사용해서 카운트 다운 만들기 public void test(){ if (countNumber > 0) { new Handler().postDelayed(new Runnable() { @Override public void run() { //여기에 딜레이 후 시작할 작업들을 입력 countNumber = countNumber - 1; TextView countNumberSec = findViewById(R.id.countNumberSec); countNumberSec.setText(countNumber + "초"); if(countNumber > 0){ test(); }else{ finish(); } } }, 1000);// 1초 정도 딜레이를 준 후 시작 } else { finish(); } } test()가 핸들러를 포함한 재귀함.. 2021. 1. 14. 개발자들 개빡치게 하는법 ; 위는 그리스어 물음표고 아래는 세미콜론이다 ; 그리스어 물음표를 조용히 복사해 엿먹일 개발자의 복잡한 로직안에 세미콜론 대신 붙여주자 ^^ 2020. 12. 16. 문자열로 리소스ID 가져오는법 문자열로 리소스 id 가져오는 법 getResources().getIdentifier(파일명, 디렉토리명, 페키지명); 을 사용한다 드로어블 객체에 적용해본다면 String resName = "@drawable/image"; String packName = this.getPackageName(); int resID = getResources().getIdentifier(resName , "drawable", packName ); 로 해주면 문자열로 리소스 id를 가져와서 resID에 넣어줄 수 있다 사용해본다면 ImageView nowImage= findViewById(R.id.nowImage); nowImage.setImageResource(resID); 처럼 사용하면 되겠다 2020. 12. 16. 무료 폰트, png 사이트 모음 png www.pngegg.com/ko PNGEgg - 고품질 PNG 이미지 무료 다운로드 고품질 PNG 이미지 무료 다운로드 노란색과 주황색 오리 그림, 가브리엘 캐릭터 만화 팬 아트, 포코요, 텔레비전, 치킨 png 640x770px 193.94KB 전자 상거래 웹 디자인 인터넷 온라인 쇼핑 판매, 웹 디자 www.pngegg.com 폰트 noonnu.cc/ 상업적 이용 가능한 무료 한글 폰트 모음 사이트 눈누 상업적으로 이용할 수 있는 무료 한글 폰트를 모아 놓은 사이트 눈누 noonnu.cc 점점 채원나갈거임 2020. 12. 15. 버튼 모서리 둥글게 만들기 res . drawable 에 button_roundly 라는 이름으로 리소스파일을 만들고 // 이거 는 버튼 내부색상 // 이거 는 버튼 테두리 색상 다음 소스를 작성해주면 끝 디자인 화면에서 사용할 버튼의 background에 "@drawable/button_roundly"를넣어주거나 xml 코드에서 android:background="@drawable/button_roundly"를 작성해주면 사용할 수 있음 2020. 12. 14. Android의 LifeCycle(수명주기) +a) onActivityResult()는 무조건 onResume()전에는 호출된다 추가내용인 +a는 시간이 갈수록 점점 채워나가며 적어 드릴게 2020. 12. 14. 엑티비티 내에서 간단한 데이터의 연산 방법 잠깐 사용되는 특정 데이터 (Ex 원주율... )들은 상황에 맞게 인스턴스 변수나 지역변수로 선언해줌 인스턴스 변수는 각각 고유한 값을 가지지만 클래스 변수는 모든 인스턴스가 공통된 값을 공유하게 됌. 한 클래스의 모든 인스턴스들이 공통적인 값을 가져야할 때 클래스 변수로 선언함 ㅇㅋ? 그래서 계속 사용되면서 변하는 값 (Ex 케릭터 레벨, 돈, 무게, 힘, 마력, 공격력, 속도...)는 무조건 클레스변수로 선언해서 다뤄야함 데이터 연산작업은 연산함수 따로 만들어서 사용하샘 public class startPTC extends AppCompatActivity { /////////////////////////////////////////////////////////////////////////변수/////.. 2020. 12. 14. Android 엑티비티간 데이터 통신 방법 데이터 통신 방법 Intent를 이용하는 방법 송신 A엑티비티의 intent객체 안에 putExtra로 데이터 넣고 이 intent객체로 B엑티비티를 시작함 Intent intent = new Intent(getApplicationContext(),B.class); intent.putExtra("Data_to_B",Data_to_B); startActivity(intent); 수신 B 엑티비티에서 getIntent로 A에서 보내온 intent객체를 받고 거기서 get자료형Extra로 intent객체 안에있는 데이터 받아오면 됌 Intent intent = getIntent(); Data_from_A = intent.getIntExtra("Data_to_B",0); startActivityForResult.. 2020. 12. 14. 데이터 로더 and 세이버 만드는법 SharedPreference 를 통해서 android에서 데이터 로더와 세이버를 만드는 방법 데이터 세이버 public void save데이터(){ SharedPreferences pref = getSharedPreferences("pref", Activity.MODE_PRIVATE); SharedPreferences.Editor editor = pref.edit(); editor.putInt("데이터", 데이터); // put(자료형)으로 데이터 넣으면 됌 editor.commit(); // 저장 } 데이터 로더 public void load데이터(){ SharedPreferences pref = getSharedPreferences("pref", Activity.MODE_PRIVATE); if((p.. 2020. 12. 14. 이전 1 2 다음