본문 바로가기

분류 전체보기274

[ANDROID] onKeyDown KeyEvent 변경 작업을 하다가 화면을 90도 회전해서 처리해야하는 작업들이 생겼다. 리모콘에서 상하좌우 key event도 90도 회전시킨 evnet로 처리해야 하는데 방법을 몰라 몇시간을 헤맸다. public boolean onKeyDown(final int keyCode, final KeyEvent event) 에서 다음과 같이 처리를 해줬다. if(keyCode == KeyEvent.KEYCODE_DPAD_LEFT) { new Thread(new Runnable() { @Override public void run() { try { inst.sendKeyDownUpSync(KeyEvent.KEYCODE_DPAD_UP); } catch (Exception e) {} } }).start(); return true; }.. 2021. 1. 15.
장고 프로젝트 생성 $ django-admin startproject mysite mysite/ manage.py mysite/ __init__.py settings.py urls.py asgi.py wsgi.py 이 파일들은, The outer mysite/ root directory is a container for your project. Its name doesn’t matter to Django; you can rename it to anything you like. manage.py: Django 프로젝트와 다양한 방법으로 상호작용 하는 커맨드라인의 유틸리티 입니다. manage.py 에 대한 자세한 정보는 django-admin and manage.py 에서 확인할 수 있습니다. mysite/ 디렉토리 내부에는.. 2021. 1. 6.
python3.9 ubuntu 18.04에 설치 1. sudo add-apt-repository ppa:deadsnakes/ppa 2. sudo apt update 3. apt install python3.9 패키지 목록을 읽는 중입니다... 완료 의존성 트리를 만드는 중입니다 상태 정보를 읽는 중입니다... 완료 다음의 추가 패키지가 설치될 것입니다 : libpython3.9-minimal libpython3.9-stdlib python3.9-minimal 제안하는 패키지: python3.9-venv python3.9-doc binfmt-support 다음 새 패키지를 설치할 것입니다: libpython3.9-minimal libpython3.9-stdlib python3.9 python3.9-minimal 0개 업그레이드, 4개 새로 설치, 0개 .. 2021. 1. 4.
[정보처리기사 필기 요약] (01-01/01~02) 소프트웨어 설계 - 요구 사항 확인 PART 01. 소프트웨어 설계 - CHAPTER 01. 요구사항 확인 (NCS 5 level) ● "요구사항 확인"이란? 업무 분석가가 수집/분석/정의한 요구사항과 이에 따른 분석모델에 대해서 확인과 현행 시스템에 대해 분석하는 능력 ● 현행 시스템 분석하기 개발하고자 하는 응용SW에 대한 이해를 높이기 위해, 현행 시스템의 적용현황을 파악함으로써 개발범위와 향후 개발될 시스템으로의 이행방향성 분석 가능. 개발하고자 하는 응용SW와 관련된 OS, DB, 관리시스템, MW 등의 요구사항 식별 가능. 현행 시스템을 분석하여, 개발하고자 하는 응용SW가 이후 적용될 목표 시스템을 명확하고 구체적으로 기술 가능. ▷ 1단계 : 현행 시스템 파악 1. 구성/기능/인터페이스 파악 시스템 구성 현황 파악 시스템 기.. 2020. 12. 16.
[ANDROID] StringBuffer 비우기 StringBuffer를 사용하던 중, 버퍼를 비우고 새로 쓰고 싶어서 방법을 찾아보았다. 1. null 값을 넣고 새로 객체 생성하기 StringBuffer strbuffer = new StringBuffer(); strbuffer.append("test"); strbuffer = null; strbuffer = new StringBuffer("test2"); 2. length를 0으로 초기화하기 StringBuffer strbuffer = new StringBuffer(); strbuffer.append("test"); strbuffer.setLength(0); strbuffer.append("test2"); 2020. 12. 16.
[ANDROID] byte array 초기화 byte array를 초기화 하는 방법을 찾아보았다. Arrays.fill(buffer, (byte)0); byte 배열에 데이터를 쓰고, 초기화를 안해주고 다시 그 배열에 데이터를 쓰니까 그 전에 있던 내용이 지워지지 않고 남아있었다. 위의 코드로 초기화를 해주니 해결됨 ! 2020. 12. 16.
[ANDROID] java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare() 앱을 실행하던 도중 다음과 같은 에러가 떴다. E AndroidRuntime: FATAL EXCEPTION: Thread-2656 E AndroidRuntime: java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare() E AndroidRuntime: at android.os.Handler.(Handler.java:204) E AndroidRuntime: at android.os.Handler.(Handler.java:118) E AndroidRuntime: at android.app.Dialog.(Dialog.java:123) E AndroidRuntime: at android.ap.. 2020. 12. 15.
[ANDROID] byteArray to String 파일에서 byte array로 글을 읽어와야 하는 부분이 있다. String으로 변환해서 출력을 하고 싶어 방법을 찾아봤더니 생각보다 간단했다. new String(byteArray, StandardCharsets.UTF_8); 위와 같이 String 객체로 변환해주면 된다! 2020. 12. 15.
[ANDROID] custom toast 커스텀 토스트 토스트를 사용하던 중에 배경이 회색인게 마음에 안들어서 커스텀 토스트를 만들어 보았다. res/layout/toast_custom.xml res/drawable/custom_bg.xml 위의 코드처럼 layout을 꾸며보았다. 그러면 다음과 같이 나온다 ! java 코드는 다음처럼 작성하면 끝 ! private TextView toast_msg; private Toast toast; //------------------------------------- LayoutInflater inflater = getLayoutInflater(); View layout = inflater.inflate(R.layout.toast_custom, (ViewGroup) findViewById(R.id.custom_toas.. 2020. 12. 15.
[ANDROID] Dialog 밖의 어두운 배경 없애기 dialog를 생성 후 띄우면 dialog를 제외한 나머지 배경은 어둡게 변한다... 나는 어두운 배경으로 변하는게 싫어 없애는 방법을 찾았다. dialog = builder.create(); dialog.getWindow().setDimAmount(0); // background remove dialog.show(); 다음과 같이 dialog.getWindow().setDimAmount(0); 를 추가해주면 !!! 배경이 어둡게 변하지 않는다 !!! 2020. 12. 14.