반응형 앱 만들기/안드로이드 study156 안드로이드 에러 Caused by: android.view.InflateException 수정하기 컴파일은 잘되고 앱을 실행하면 죽는다. 하기와 같은 에러코드를 뱉으면서 말이다. Caused by: android.view.InflateException: Binary XML file line #23: Binary XML file line #23: Error inflating class ImageButton at android.view.LayoutInflater.inflate(LayoutInflater.java:551) at android.view.LayoutInflater.inflate(LayoutInflater.java:429) at android.view.LayoutInflater.inflate(LayoutInflater.java:380) at androidx.appcompat.app.AppComp.. 2021. 8. 11. 안드로이드 layout_weight 사용법 그리고 주의할 점 LinearLayout 을 사용할 때, 자식 오브젝트들에 layout_weight 설정을 할 수 있다. layout_weight의 크기에 따라서 폭, 길이 등을 손쉽게 제어가 가능하기 때문이다. 하지만, layout_weight 사용시 주의점이 있다. LinearLayout 의 방향(세로,가로)에 따라 자식 오브젝트의 layout_width 및 layout_height를 0dp 로 설정해야 한다. 그렇지 않으면, layout_weight 가 제대로 동작하지 않는다. 가로,세로 동일하지만 세로를 예로 들어보자. 자식 오브젝트들의 weight 를 3:1 로 설정했고, 원하는대로 배치가 잘 되었다. 물론 layout_height 는 0dp 로 설정되어 있다. 하기처럼, layout_height 를 match_.. 2021. 8. 6. 안드로이드 폰에 설치된 메시지 앱 호출하기. 인텐트를 활용하면, 폰에 설치된 메시지 앱들을 자동으로 호출할 수 있다. 직접 Activity를 호출하는 명시적인 인텐트 가 아니라, 안드로이드 프레임 워크를 통해 설치된 메시지 앱들의 Activity 를 호출할 수 있는 암시적인 콜이다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); callMessageApp();.. 2021. 7. 30. 안드로이드 클래스 계층구조 보기 클래스의 상속 구조를 알아보고 싶을때는? 하기처럼 ImageButton 의 계층구조를 확인해보자. 1. Help 메뉴의 Find Action 메뉴를 선택하거나, Ctrl+Shift+A 단축키를 누른다. 2. 하기 창이 로드되었을때, hierarchy 라고 검색한뒤, Hierarchy Actions 을 선택한다. 3. Hierarchy Actions 에서 Browser Type Herarchy 를 선택. 4. ImageButton 에 대한 계층 구조를 확인 할수 있습니다. 감사합니다. 2021. 7. 29. 자바 - 신형 for 문법 최신 자바에서는 배열 혹은 컬렉션에서 for 문법을 더 편리하게 사용할 수 있게 지원하고 있다. 기존 형태라면, int array = new int[10]; for(int i = 0; i < array.lenth ; i++) 이런식의 표현이 되었을 것이다. 하지만 신형 for 문에서는 하기처럼 작성해주면 된다. 1 2 3 4 5 6 7 8 9 10 11 12 13 public static void main(String[] args) { // TODO Auto-generated method stub int[] test; int sum= 0; test = new int[] {1,2,3}; // 신형for 문법 for(int temp : test) { sum += temp; } System.out.printl.. 2021. 6. 25. 자바 - 형변환 주의 할 점. (byte 부호 연산 결과값) 자바 형변환시 주의 할 사항이 있다. 간단 한것 같지만, byte 부호연산 결과값의 경우 int 형으로 반환 된다는 것을 숙지해야 한다. public static void main(String[] args) { // TODO Auto-generated method stub byte num = 100; byte num1 = -100; byte num2 = -num; // 컴파일 에러가 발생하는 지점. byte num3 = num1; } 즉, 부호값이 붙었기에 하기 처럼 수정을 해야한다. int num2 = -num; 물론 이클립스 등의 에디터에서 미리 빨간줄로 컴파일전 에러를 표기해주지만 byte 형의 부호 연산결과 값은 int 형이다는 것을 알 필요가 있다. 감사합니다. 2021. 6. 11. 자바 - 키보드로 부터 문자열 입력받기. 시스템에서 입력된 문자열을 입력받기 위해서는? system.in.read(); 의 경우 단문자만 입력이 가능하다. String 형을 받기 위해서는 하기 API 를 활용해야 한다. 1 2 3 Scanner scanner = new Scanner(System.in); String inputData = scanner.nextLine(); System.out.println("inputData = " + inputData); cs 바로, Scanner 객체로 Scanner.nextLine() 함수를 사용해서 키보드로 부터 입력된 값을 String 형으로 반환한다. 키보드로 부터 문자열을 입력받기 위해서는 자바에서 제공하는 Scanner 클래스를 활용해보자. 감사합니다. 2021. 6. 8. 자바- 정수 연산에서 자동 캐스팅 주의할 점. 자바 캐스팅 중 주의 할 점은 하기와 같다. byte a= 5 , b = 10; byte c = a + b ; 위 구문은 정상적으로 컴파일 될까? 그렇지 않다. 피연산자로 사용된 a,b 변수는 int 로 자동 캐스팅 되기때문에 이때 반환값을 받는 byte c 는 int c 가 되어야 한다. 참고로, int 보다 작은 할당크기를 가지는 타입인 char, byte, short 등은 위 와 같은 연산에서 자동으로 int 로 캐스팅 된다. [ Correct ] byte a, b = 10 int c = a + b 그럼 하나더 살펴보자. byte c = 5 + 10; 정답부터 이야기 하자면 위는 int 형으로 강제 캐스팅 되지 않는다. 15라는 값을 컴파일 단계에서 계산한뒤 byte c 를 통해 15가 저장된 메모.. 2021. 6. 2. 안드로이드 프래그먼트 쉽게 만들어보기 - 2편 soo0100.tistory.com/1482 안드로이드 프래그먼트 쉽게 만들어보기 프래그먼트 란? 세분화된 화면이라고 생각하면 된다. 위의 예시에서는 빨간색 영역이 바로 프래그먼트이다. 안드로이드에서, 특정 영역별의 화면을 업데이트하기위해서 액티비티 자체를 변경 soo0100.tistory.com 이번 시간에는 자바 파일을 구성해보자. 3. 프래그먼트 자바 파일 구성하기. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 public class ColorFragm.. 2021. 5. 3. 이전 1 ··· 4 5 6 7 8 9 10 ··· 18 다음 반응형