반응형

Activity 생성 시, EditText에 포커스가 가는 문제




의도치 않은 동작

Toolbar메뉴를 누르면

EditText 위젯이 포함된 Activity를 하나 생성해서 띄우도록 구현했는데

Activity가 생성 -> EditText에 포커스 -> 키패드 팝업

의 순서로 의도치 않은 동작이 수행되는 군요.



그렇다고 입력을 받아야 하는 EditTxt가 포커스를 갖지 못하게 할수도 없구요.

Activity 생성시 다른 위젯에 포커스를 강제로 가게 하는 것도 다른 문제가 있습니다.


어쩌면 꼼수

다음과 같이 처리하면 이러한 문제는 해결(?) 됩니다.


결국은 다른 위젯에 포커스를 가게 하는 방식입니다만,

화면상에 보이는 다른 위젯에 포커스를 주는게 아니라, 전체 화면을 감싸는 LinearLayout에 다음 속성을 통해 포커스를 주면 된다는 거죠


테스트를 해보니 android:focusableInTouchMode="true" 설정만으로도 현상이 사라지기는 하는데...

LinearLayout의 focusable 기본값이 true라는 얘긴가?

안전하게 둘다 쓰는것으로 하겠습니다.



*Update - 2019.04

- 테스트 해보지 않음

<activity android:windowSoftInputMode="stateHidden ">

stateHidden : activity 실행시 키보드가 자동으로 올라오는 것을 방지


default: adjustUnspecified | stateUnspecified

adjustUnspecified  : system이 적절한 키보드 상태를 설정, 혹은 테마에 따라 설정

stateUnspecified : system이 알아서 상황에 맞게 설정

반응형

'안드로이드' 카테고리의 다른 글

Android resource compilation failed  (3) 2019.02.23
Activity간 Object 공유- Parcelable  (0) 2019.02.21
Android Studio 단축키  (0) 2018.12.21
Android Studio 화면구성  (0) 2018.05.13
자주쓰는 코드  (0) 2018.05.13
반응형

PowerMockup


앱 개발 경험도 쌓을겸 개발절차를 기록해 가며, 간단한 앱을 하나 개발해 보려 합니다.


그 과정 중의 일부로

적어도 구색은 갖춘 화면 디자인문서를 작성해 보려고 했지만

파워포인트 도형만으로는 UI구성하는 것이 여간 어려운게 아니네요.


혹시 관련된 어플이 있을까 싶어 검색해보니 처음나오는 것이 Power Mockup 이라는 Powpoint add-in입니다.

(언제가 이름은 한번쯤 들어봤던 듯...)





일단 Trial 버전을 설치해 봅니다.

설치하고 후, PowerPoint가 실행되고 아주 간략한 튜토리얼 문서가 팝업됩니다.

우측의 [PowerMockup Shapes] 윈도우에서 제공되는 여러가지 위젯이나 Phone 모양을 드래그 해서 쉽게 UI를 구성해 볼수 있습니다



Trial 버전이라 ...

Trial 버전이라 Gray처리된 Shape들은 드래그 해서 가져다 놓으면 "Full Version Required"라고 친절하게(?) 안내해 줍니다.

(에러처리나 Diable처리가 아니라 이러한 방식의 기능제한 처리도 나름 재미있군요 )

폰 모양 Shape에 컨트롤이라도 몇개 배치해 보려 했더니만, 기본 제공하는 SmartPhone Shape은 "Full Version Required"입니다.



Download More Shapes ...

트라이얼 버전이지만 Download Shape은 가능한 모양입니다.

Android Phone Mockup Shapes를 다운로드 해볼까요?



간단히 사용해 보니 ....

몇가지 위젯을 드래그앤 드랍해서 UI를 구성해 보기니, 참 간단하게 화면이 구성됩니다.

종류별 위젯이 충분히 제공되어서 전문 디자이너가 아니더라도 손쉽게 UI를 구성해 볼 수 있습니다.


PowerPoint Add-in인 관계로 별도의 툴 사용법을 학습할 필요가 없다는 것도 장점으로 보이네요.




그리고 ...


Are you a blogger, 

journalist, 

or a Microsoft MVP? 

Here’s how you can apply for a free PowerMockup license.


라네요.


몇가지 조건이 있기는 한데... 메일 보내보고 업데이트 하는거로 하겠습니다.



하루만에 라이선스 코드를 포함한 회신 메일 수신

친절하게도 메일을 보내고 바로 다음날 회신 메일이 도착했습니다.


리본메뉴의 "Enter Licence Code"를 클릭하고


메일에 포함된 NameLicense Code를 입력하면 활성화 완료















비활성화 상태였던 SmartPhone과 기타 Shapes이 사용가능해 졌습니다.


잠깐의 노력을 들여 "Power Mockup"를 사용할수 있다니 정말 감사한 일입니다.

자주 사용하게 될것 같네요.



반응형
반응형

안드로이드 스튜디오를 활용한 실전 앱 만들기




단위 기능 위주의 예제보다는

약간은 사이즈가 있는 예제를 통해 Android 개발하는 방법(?)에 대해 보여주는 책.


각 장마다 필자가 구상한 '앱'을 구현하는 과정을 설명한다.


가볍게 따라해보며 프로젝트를 진행해보면 도움이 될듯..

레퍼런스로 활용하는 타입의 개발 서적은 아님 

반응형
반응형

괜찮아 괜찮아 다 괜찮아


가볍게 읽으며 생각해 볼수 있는 책




* 지금 눈앞에 힘든 상황이 벌어지고 있다면 용기를 내어 한번 부딪혀 보세요. 

생각만큼 힘들지는 않을 겁니다.

나를 위축 시키는 판단은 이제 그만...




*진대제 정보통신부 장관이 대한상의 초정 조찬간담외에서 참석자들에게 던진 질문


`100점짜리 인생을 만드는 법?`


일단 알파벳 순서대로 숫자를 붙여 줍니다.

A에 1을 붙여주고 B에 2, C에 3, D에 4…이런식으로 가면 Z는 26이 된다. 

그런 다음 어떤 단어 알파벳에 붙여진 숫자를 모두 더해 100이 되는 단어를 찾는다.


“열심히 일하면 될까요?” 그리고는 계산을 해봤다. 

hard work, 98(8+1+18+4+23+15+18+11)점이었다. 

일만 열심히 한다고 100점짜리 인생이 되는건 아니었다. 


그렇다면 지식이 많으면? 

knowledge는 96점이다. 


운으로 될까? luck 47점이었다. 


돈이 많으면? money는 72점이었다. 


리더십은? leadership 89점이었다. 


진장관이 물었다. “그럼 100점짜리는 뭘까요?” 

“답은 마음먹기(attitude)입니다. 

인생은 `마음먹기`에 따라 100점짜리가 될 수 있습니다”. 

반응형
반응형

Android Studio 단축키


어차피 반복할 일이라면 미리 습득해서 익숙해 지면 두고 두고 편한 것들이 있습니다.

더 효율적으로 일을 할 수 있을뿐더러, 반복되는 수고를 덜어주는 그런것들 말이죠.


- Windows 단축키라던가 ?

- 워드,파워포인트,엑셀 등 자료 작성시 자주 사용하게 되는 OA 툴이라던가 ?

- (평생 편해질일은 없을거 같기는 하지만)"영어" 같은거도 마찬가지죠


개발 하는 입장에서는 개발툴의 단축키가 위의 케이스에 딱 맞는 케이스 인것 같습니다.


마우스로 손을 옮기지 않고 필요한 기능들을 키보드로 작업할 수 있는가?

코드를 얼마나 효율적으로 타이핑 할수 있는가?


이 두가지가 단축키를 익히는 이유가 될것 같습니다.



Android Studio 단축키를 제대로 정리해 보려고 했더니, 안드로이드 개발자 사이트(developer.android.com)에 

상세하게 정리가 되어 있네요.

https://developer.android.com/studio/intro/keyboard-shortcuts


해당 사이트에 기술된 내용을 바탕으로 활용빈도가 높은 단축키와 

설명만으로는 바로 와닿지 않는 단축키에 대해서 정리해 보겠습니다.

(꼭 필요한 단축키 임에도 설명만으로는 내가 원하는 기능인지 알아보기 어려운 경우가 많습니다.)


일반Windows/Linux
 모두 저장  Control + S
 동기화  Control + Alt + Y
 편집기 최대화/최소화  Control + Shift + F12
 즐겨찾기에 추가  Alt + Shift + F
 현재 프로필로 현재 파일 검사  Alt + Shift + I
 빠른 전환 구성표  Control + ` (역따옴표)
설정 대화상자 열기Control + Alt + S
 프로젝트 구조 대화상자 열기  Control + Alt + Shift + S
탭과 도구 창 간의 전환Control + Tab



탐색 및 검색                                  Windows/Linux


모든 항목 검색(코드와 메뉴 포함)Shift 키를 두 번 누름

Class, File, Symbols, Action 등 일치하는 모든것(?)을 검색

이 단축키를 기억해 두면 팝업되는 창을 통해, 각 타입별 단축키도 확인 가능합니다



찾기

Control + F
 문서내 검색


다음 찾기F3
이전 찾기Shift + F3
바꾸기Control + R

경로에서 찾기

Control + Shift + F


Project, Module , Directory, Scope 별 검색이 가능합니다.



파일 구조 팝업 열기

Control + F12
 



열린 편집기 탭 사이에서 탐색

Alt + 오른쪽/왼쪽 화살표
 



 Design / Text 탭 전환

 Alt + Shift + (<-, -> )

 선택한 위젯의 코드(xml)로 이동

 Control + B

소스로 이동F4 / Control + Enter
새 창에서 현재 편집기 탭 열기Shift + F4
 최근에 연 파일 팝업  Control + E
 최근에 편집한 파일 팝업  Control + Shift + E
 마지막 편집 위치로 이동  Control + Shift + 백스페이스
 활성 편집기 탭 닫기  Control + F4

도구 창에서 편집기 창으로 돌아가기

Esc

활성 또는 마지막 활성 도구 창 숨기기

Shift + Esc

Control + H

Esc

Shift + Esc

를 차례대로 입력한 화면입니다.

커서의 위치를 잘 확인하세요.




 줄 이동

Control + G


유형 계층 구조 열기


Control + H
 


메서드 계층 구조 열기Control + Shift + H

호출 계층 구조 열기

Control + Alt + H

함수의 호출관계를 보여주는 창을 표시합니다.


 


코드 작성

                                        Windows/Linux
코드 생성
(getter, setter,
constructor, hashCode/equal,
toString, new file, new class)
Alt + Insert

 

constructor, getter, setter 등의 메소드를 자동생성할 수 있는 메뉴를 팝업합니다.




메서드 재정의

Control + O


 Override 함수를 추가합니다.




추상 메서드 구현


Control + I
 추상 메서드를 구현합니다. 
코드 감싸기(if...else / try...catch 등)Control + Alt + T
캐럿(^)에서 줄 삭제Control + Y
현재 코드 블록 접기/펼치기Control + (-/+)
모든 코드 블록 접기/펼치기Control + Shift + (-/+)
현재 줄 또는 선택 항목 중복Control + D

기본 코드 완성

Control + 스페이스
 



스마트 코드 완성

(예상 형식을 기준으로 메서드 및 변수 목록 필터링)

Control + Shift + 스페이스
 


명령문 완성

Control + Shift + Enter
 



빠른 문서 조회

Control + Q

 
클래스나 메서드 등의 정보를 팝업윈도우로 표시



선택한 메서드에 대한 매개변수 표시

Control + P


 
선언으로 이동(직접)Control + B 또는 Control + 클릭
구현으로 이동

Control + Alt + B

슈퍼메서드/슈퍼클래스Control + U
빠른 정의 조회 열기Control + Shift + I

 

구현함 함수 내용을 확인 하느라 오르락 내리락 했었는데, 편리한 기능이네요.




프로젝트 도구 창 표시 여부 전환

Alt + 1

 

Alt + num 키로, 대상 창을 표시하거나 표시않도록 하는 기능힙니다.


num은 아래의 그램에서 찾아보세요.



북마크 전환F11
니모닉으로 북마크 전환Control + F11
줄 주석으로 주석 처리/주석 처리 제거Control + /
블록 주석으로 주석 처리/주석 처리 제거Control + Shift + /

계속 증가하는 코드 블록 선택

Control + W
 이런 기능도 있었네요.

현재 선택 항목을 이전 상태로 감소Control + Shift + W
코드 블록 시작으로 이동Control + [
코드 블록 끝으로 이동Control + ]
코드 블록 시작까지 선택Control + Shift + [
코드 블록 끝까지 선택Control + Shift + ]
단어 끝까지 삭제Control + Delete
단어 시작까지 삭제Control + 백스페이스


가져오기 최적화


Control + Alt + O
 불필요한 import 구문을 정리합니다. 

프로젝트 빠른 수정
(의도한 작업과 빠른 수정 사항 표시)

Alt + Enter
 


코드 서식 다시 지정Control + Alt + L
줄 자동 들여쓰기Control + Alt + I
줄 들여쓰기/들여쓰기 해제Tab/Shift + Tab
스마트 선 이음Control + Shift + J
스마트 선 분할Control + Enter
새 줄 시작Shift + Enter
다음/이전 강조표시된 오류F2 / Shift + F2


빌드 및 실행                                 Windows/Linux
빌드Control + F9
빌드 및 실행Shift + F10


디버깅                                              Windows/Linux
디버그Shift + F9
Step overF8
Step intoF7
스마트 Step intoShift + F7
Step outShift + F8
커서까지 실행Alt + F9
 식 평가 Alt + F8

커서까지 실행(강제)

Ctrl + Alt + F9 
식 평가Alt + F8
프로그램 재개F9
중단점 전Control + F8
중단점 보기Control + Shift + F8



리팩터링

                                         Windows/Linux


복사F5
이동F6
안전하게 삭제Alt + Delete
이름 바꾸기Shift + F6
서명 변경Control + F6
인라인Control + Alt + N
메서드 추출Control + Alt + M
변수 추출Control + Alt + V
필드 추출Control + Alt + F
상수 추출Control + Alt + C
매개변수 추출Control + Alt + P



파일간 이동

* Java 코드 --> 레이아웃 편집


* 레이아웃 --> Java 코드 편집




반응형

'안드로이드' 카테고리의 다른 글

Android resource compilation failed  (3) 2019.02.23
Activity간 Object 공유- Parcelable  (0) 2019.02.21
EditText 포커스 문제  (0) 2019.02.13
Android Studio 화면구성  (0) 2018.05.13
자주쓰는 코드  (0) 2018.05.13
반응형

MEX Debugging Extension for WinDbg

- 일반적인 디버거 작업을 단순화하고 디버거에 강력한 텍스트 필터링 기능을 제공


1. Download Link

https://www.microsoft.com/en-us/download/details.aspx?id=53304



2. install

[WinDBG installPath]\winext 에 복사 


3. load

windbg 실행후, command창에 .load mex.dll 


4. command

 

 

 

 !mex.p [process]

 [process] summary

 

 !mex.lt [process]

 [process]의 쓰레드리스트 출력

 

 !mex.us -p [process]

 [process]의 쓰레드별 콜스택 출력

 




반응형

+ Recent posts