일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 잡담
- 이륜차
- HTML
- 디자이어HD
- Qt OpenGL
- 스타크래프트2
- Qt4
- 자바
- vuejs
- 바이크
- 스타2
- 윈도우7
- android SAF
- 안드로이드
- 오토바이
- QTcpServer
- qt 설치
- 마영전
- 양평역
- 고속도로
- 재귀함수
- Java
- 정성하
- c언어
- Qt 소켓프로그래밍
- 자료구조
- FFI
- 알람프로그램
- 엑티브엑스
- QT
- Today
- Total
목록프로그래밍/안드로이드 (51)
프로그래밍과 잡담
안전모드 윈도우에도 있고 리눅스에도 있다. 안드로이드도 리눅스이니까 안전모드가 있더군. 일반적인 하드웨어 적으로 메뉴버튼이나 홈버튼이 있는 경우에는 아래의 링크로 들어가면 자세히 나온다. https://support.norton.com/sp/ko/kr/home/current/solutions/v59378086_EndUserProfile_ko_kr 버튼이 없는 태블릿의 경우에는 다음과 같은 방법을 이용해야한다. 일단 난 삼성 갤노트 10.1 밖에 없으니 이것만 설명한다. 근데 대부분 비슷할 거라 생각한다. 1. 일단 태블릿을 끈다. 2. 다시 전원을 킨다. 3. 삼성 로고가 뜨면 볼륨 작게 하는 버튼을 계속 누르고 있는다. 4. 태블릿이 켜질때 까지 계속 누르고 있는다. 5. 그러면 안전모드라고 구석에 뜰..
XML상에서는 그냥 위에 처럼 쓰면 된다. 하지만 동적으로 레이아웃을 만들 거나 할 때는 코드로 만들어야 한다. 그 방법은 // 아래와 같이 해줘야 기기에 맞는 DP가 나온다. DisplayMetrics dm = getResources().getDisplayMetrics(); int size = Math.round(20 * dm.density); Button btn = new Button(mContext); //패딩은 그냥 이렇게 쓰면 된다. btn.setPadding(0,size,0,0); //마진을 쓸려면 아래와 같은 방법을 쓰면 된다. LinearLayout.LayoutParams param = new LinearLayout.LayoutParams( LinearLayout.LayoutParams.W..
왜 미친 컴파일러냐고? 왜냐하면 컴파일을 하면 에러메시지를 존나 간단하게 보여준다. INVALID_VALUE 라는 에러메시지만 덜렁 보내고 검은 화면만 나온다. 이 미친 또라이같은 컴파일러가 다 있나? float t = 0.0; if( t == 0) { ... } 위에 처럼 하면 오류 안날 거 같지? 근데 씨발 오류가 난다. 저 빌어먹을 INVALID_VALUE 가.. ; (세미콜론)을 빼 먹어도 GL_INVALID_VALUE 이고 뭐만 잘못하면 이것만 나온다. 완전 병신 컴파일러다. 아 그리고 난 OpenGL ES를 JNI를 이용해서 만든게 아니고 그냥 자바 상에 자바 코드로만 했다. 혹시 JNI가 아닌 순수 자바로만 GLSL을 하는 사람들이 있다면 인간 GLSL 컴파일가 되어야 할 것이다. 내가 GL..
어떻게 골 때리냐 하면은 나는 모니터는 2개 쓴다. 근데 1번은 외장 gpu로 연결했고 두 번째는 내장에 연결했다. 이유는 외장 gpu가 이상해서 그런거고. 여하튼 이게 중요한게 아니고. 안드로이드 에뮬레이터 보면 gpu 에뮬레이션이라는게 있다. gpu로 에뮬레이터 그래픽 가속을 하는거지. 이걸 1번 모니터에서 실행하면 실행이 잘 되는데 2번 모니터에서 실행을 하면 앱 크래시가 발생한다. 이해 안돼면. 모니터 1번과 2번의 그래픽카드가 달라서 발생하는 에러인가보다. 1번 모니터에 안에서 에뮬레이터를 실행하면 잘돼고 1번 모니터가 아닌 2번 모니터에서 에뮬이 실행돼면 앱이 크래시가 일어난다는거. 1모니터 --> 실행 --> 1모니터에서 실행 OK1모니터 --> 실행 --> 2모니터 실행 fail 아 씨발 ..
랜더 스크립트 사용시 오류가 발생 할 경우. 안나는 사람들도 있을 수 있다. RS 파일을 컴파일 하는거 까지는 오류가 안발생하는데 실행 시에 DX 오류가 발생하는 경우가 있다. BufferOverflowException 인가가 보일 수도 있고 여러가지가 있는데 이에 대한 해법은 포멧이 있을 수 있고 포멧이 귀찮으면 android sdk manager를 열어서 build-tool들을 다 지우고 하나 씩 깔아서 테스트하면 된다. 그래도 안돼면 그냥 포멧.. 나같은 경우는 빌드툴이 19까지 있는데 19에서도 오류가 나서 18.1로 내렸더니 잘된다. 도대체 왜 이러는건지 알 수가 없네..망할노무거.. 그냥 리눅스를 깔아서 해야하나.
안드로이드는 3.0이상부터는 엑션바라는걸 사용한다. 위에 스크린샷을 보면 알다시피 이것이 액션바이다. 그리고 오버플로우 메뉴가 뭐냐하면 저기 점 3개있는게 오버플로우 메뉴다. 오버플로우의 뜻은 '넘치다' 라는 뜻이다. 일정 수의 메뉴가 액션바에 추가되면 저기 점 3개에 나오게 된다. 자, 여기까지는 설명이고 오버플로우 메뉴의 문제점을 설명하겠다. 이 오버플로우 메뉴의 단점은 아이콘이 있을 시에 아래처럼 아이콘이 안 나온다는 단점이 있다. 이것을 코드로 해결 할 수 있는 방법은 실질적으로 없다. 그렇기 때문에 오버플로우 메뉴처럼 비슷하게 보이는 방법을 써야한다. 그것은 바로!! 서브메뉴!! 를 이용하는 것이다. 서브메뉴는 메뉴 아래 나오는 메뉴를 말한다. 추가로 서브 메뉴를 만드는 방법 사용하는 방법은 굉..
지금 나한테는 디자이어HD 와 트랜스포머 프라임이 있다. 하나는 ICS(커스텀 롬 ) 이고 JB( 순정)이다. 둘의 차이는 cpu와 램에서 차이가 난다. cpu는 폰은 스냅드래곤3세대. 태블릿은 태그라3 폰은 768MB이고 태블릿은 1기가다. 둘의 최대 Heap 크기 차이가 많이 난다. 폰은 64메가 밖에 안되는 반면 태블릿은 256메가나 된다. 허 이것은 어디서 오는거지.. 최대 힙메모리 보고 싶으면 아래 처럼 쓰면 된다. android.util.Log.d("TAG","MAX MEMORY : "+ (Runtime.getRuntime().maxMemory() / (1024 )) + "KB"); 그냥 램용량에 따라서 자동으로 할당이 되는건가? 1기가 폰이 없으니 나중에 동생껄로 해봐야겠군.. 아니면 그냥 ..
알림은 위에 스크린샷 처럼 되있는걸 보고 알림이라 한다. 알림 사용법: * 전체 소스는 귀찮아서 안적음 알림 부분만 쓰겠음.. //중략 ...... //알림을 터치했을때 뜰 엑티비티 Intent in = new Intent(this, 엑티비티.class); //새로운 작업으로 실행 in.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); PendingIntent pin = PendingIntent.getActivity(this, id, in, 0); // 순서대로 아이콘 id, 제목, 표시할 시각 Notification notification = new Notification(R.drawable.icon, "제목", System.currentTimeMillis()); // 이것을 쓰..
http://stackoverflow.com/questions/2321332/detecting-which-selected-item-in-a-listview-spawned-the-contextmenu-android 위에 사이트로 들어가면 자세히 나온다. 그냥 코드만 보고 해도된다. 메뉴 생성시 @Override public void onCreateContextMenu(ContextMenu contextMenu, View v, ContextMenu.ContextMenuInfo menuInfo) { AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo) menuInfo; selectedWord = ((TextView) inf..
ADT가 20번대가 되면서 안드로이드 프로젝트가 생성이 안된다. 마지막 부분에서 compatibilty 라이브러리를 설치해도 안돼는 문제가 있다. 스크린샷을 안찍어놔서 못 올리는데 어쨌든 무슨 라이브러리를 설치하라는데 설치해도 안넘어가는 현상이 있다. [ install ] [check ..?] 마지막 부분에 이런 식의 이름을 가진 버튼 2개창이 나온다. 해결법은 그냥 compatibilty 라이브러리를 지운 다음에 하면 된다.