본문 바로가기

티스토리 각종 설정 옵션 티스토리 옵션에서 선택 화면 으로 가서 목록만을 선택하고 저장한다. 그리고 사이드 메뉴(아래 왼쪽 사진)를 클릭하면 오른쪽과 같이 글의 목록만 뜬다. 사이드바의 최근 코멘트 사이드바의 서치메뉴 사이드바의 카운터(방문자-순서대로 수 어제/오늘/전체) 사이드바의 카테고리 사이드바의 블로그 메뉴(화면설정->메뉴 에서 추가/삭제 가 가능하다) 더보기
java.lang.RuntimeException: Your content must have a TabHost whose id attribute is java.lang.RuntimeException: Your content must have a TabHost whose id attribute is tabhost를 만들다보면 위와 같은 에러를 경험할 때가 있다. 이유는 xml의 id를 잘못 입력한 경우 저런 에러가 생긴다. 십중 팔구는 android:id="@id/tabhost" 라고 했을꺼다. 그리고 mainActivity에서 R.id.tabhost라고 호출했을거고..위와 같은 식으로 했을 때 에러가 생기는 것이므로 이를 수정하자. 먼저 아래와 같이 xml의 id의 양식을 바꾼다. 그리고 아래와 같이 mainActivity의 findViewById안의 파라미터도 아래와 같이 바꾼다. 끝~ 더보기
Canvas Draw bitmap 개념 이해 실제로 화면에 그림을 그리는건 draw 메소드들. draw 메소드를 사용하는 주체는 Canvas. Canvas는 주체이므로 그림을 그리려면 도화지가 필요하다. 이 도화지가 bitmap drawbitmap도 결국은 bitmap을 도화지에 그리는것. paint는 붓 종류. 굵은 붓인지. 얇은 붓인지...어쨋든 붓 종류. point는 좌표. 더보기
extends AppCompatActivity 안에서 dialog 만들기, dialog 크기 변경 제목을 보면 대충 감이 오시리라 믿는다. 무슨말인고하니.. 123456public class example extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); }Colored by Color Scriptercs 위와같이 처음 안드로이드 스튜디오에서 액티비티를 만들면 위와같이 나온다. 즉 위의 코드가 거의 기본 모습인데...여기에 dialog를 만드려 한다. 보통 책에 보면 alert 다이얼그니 무슨 다이얼로그니 하면서 상당히 어렵게 표현해 두었다. 가장 빡치는건.. 더보기
큰 사이즈의 bitmap을 효과적으로 줄여서 로딩하기 미리 말해두자면 여긴 완벽한 코드를 올리는 곳이 아니다. 그저 '아..그래서 저 코드를 쓴거구나' 정도만 이해했으면 하는 바람으로 글을 쓰는 것이다. 실제 사례라든지 소스코드는 깃허브나 스텍오버플로우 등에 가서 받길 바란다. BitmapFactory는 각종 디코딩 메소드를 제공함. 디코딩이란게 뭐냐면..2진수나 뭐 어떠한 압축된 형태로 저장되어 있는 녀석을 원래로 복원시켜주는게 디코딩이다. decodeByteArray(), decodeFile() 등 여러가지 디코딩 메소드들이 있는데 내가 가진 다양한 형태의 소스에 따라 알맞는 디코딩 메소드를 사용하면 된다. 일단 bitmap을 디코딩 해봤으면 알겠지만..이미지..사진..이라는게 상당히 큰 용량을 자랑한다. 크기도 1024x768을 기본으로 할정도로..... 더보기
super super 는 상속때문에 생기게된 키워드. super() 는 부모클래스의 생성자 호출을 의미한다. 예를들어 Main에서 new Dog()를 실행하면 1번 화살표를 따라 갈 것이다. 그러면 Dog class를 생성할 때 new Dog()에서 ()에 아무 파라미터도 없으므로 2번 화살표와 같이 이동한다. 만약()에 Dog b처럼 있었다면 2번 화살표 아래 보이는 public Dog(String name, int age){ ...} 로 이동했을 것이다. 아무튼, 생성자를 보니까 super라는 녀석이 보인다. super는 부모클래스를 생성하고 초기화 하는 역할을 한다. 왜 부모 클래스를 생성할까? extends .. 즉 상속을 하기위해선 먼저 부모클래스를 만들어야하기 때문이다. 부모 없이는 자식도 없으니깐. 아.. 더보기
overriding vs overloading overloading은 함수 중복으로 정의-함수 이름만 같으면 나머지 다 달라도 오케이! overriding은 상속받은 메소드 재정의-부모와 내용만 살짝 다르게. overriding 1. 오버라이드 하고자 하는 메소드가 상위 클래스에 존재해야 함.2. 메소드 이름이 같아야 함.3. 메소드 파라미터의 개수,타입(자료형태), 리턴타입이 같아야 함.4. 메소드에 상위 메소드와 동일하거나 내용이 추가되어야 한다. ->즉, 부모한테 받은거 그대로 쓰거나 몇줄 추가 해서 약간 바꿔쓰거나! 이게 오버라이딩! 여기까지는 쉬운데.. 이제 overloading이 들어가면 이때부터 헷갈리기 시작. overloading은 다형성의 개념. 다형성이 뭔가하니..잡탕과 비슷. 이놈이고 저놈이고 다 들어갈 수 있게 만드는 것. 쉽게.. 더보기