안드로이드 개발 질문/답변
(글 수 45,052)
문자 입력 프로그램을 테스트 중에 모르는 것이 있어 문의합니다.
1. 가상키보드의 가로모드에서 키를 눌렀을 때 큰 버튼으로 보여 주는 것을 구현 중입니다.
xml에서 android:iconPreview을 써서 눌렸을 때의 큰 버튼의 글자는 바꿀 수 있었습니다.
하지만, 기본적으로 눌렸을 때 보이는 큰 버튼의 배경은 변하질 않습니다.
소스 프로그램내의 버튼배경이미지도 바꾸었지만 변하지 않았습니다.
그래서 글자뿐 아니라 버튼배열이미지를 바꾸고 싶습니다.
위의 android:iconPreview처럼 어떤 변수로 바꿀 수 있을 것 같은 데 알려 주실 수 있나요?
2. 가상키보드에서 길게 누르기 하면 큰 버튼이 아니라 팝업창이 뜨는 것을 구현해 보았더니 컴파일은 에러가 나지 않는데 갤럭시s에서 실행하고 길게 누르기를 하면 프로그램 강제 종료가 됩니다.
혹시 삼성에서 강제로 막아 놓은 것인지, 아닌지 알려 주실 수 있나요?
혹시 테스트용 소스를 좀 제공해 주실 수 있나요?
2010.11.08 09:59:38
1. 기본 softkeyboard 로 작업중이신듯 하여, 그걸로 말씀드리면. 버튼배열이미지도 바꿀수 있습니다.
OnConfiguerationChaneged(){} 오버라이딩 하셔서 가로 세로 일때 키보드뷰를 설정해주시면 됩니다. 혹은 키보드 레이아웃파일이 xml 폴더에 있다면, xml-land 폴더를 생성하셔서 동일한 키보드레이아웃파일 명으로 키보드뷰 배열바꾸신 xml 파일 넣으시면됩니다.
2. 테스트용 소스는 http://www.androidpub.com/14256 참조하셔도 될듯합니다.
2010.11.08 10:47:36
답변 감사합니다. 현재 softkeyboard 소스로 작업중입니다. 그런데 버튼 배열 이미지가 무슨 의미인가요? 그리고, OnConfiguerationChaneged(){}을 잘 몰르겠습니다. 그리고, xml-land에 넣을 xml은 레이아웃 xml인 res/레이아웃xml.xml 에 넣어서 사용하는 것이지요? 제가 알고자 하는 것은 xml-land에 넣을 xml에서 키 버튼이 눌렸을 때, 크게 따로 버튼이 보이는 것에서 배경을 바꾸고자 합니다.
2010.11.08 10:59:55
제가 한 것은 values/styles.xml에 <style name="SkinDefault" parent="android:Widget.KeyboardView">
<item name="android:keyBackground">@drawable/btn_keyboard_key</item> </style>을 넣고 나서, drawable/btn_keyboard_key.xml에 <item android:state_pressed="true"
android:drawable="@drawable/btn_keyboard_key_pressed" />
<item
android:drawable="@drawable/btn_keyboard_key_normal" /> 을 넣어서 키가 눌렸을 때와 기본 이미지를 수정하였습니다.
그런데, 키를 눌렀을 때 보이는 큰 버튼 이미지는 어떤 android:속성이름을 사용해야 하는지 알고 싶습니다. 그리고, xml에서 android: 뒤에 붙는 속성이름들을 나열해서 보여주는 곳이 있나요?
<item name="android:keyBackground">@drawable/btn_keyboard_key</item> </style>을 넣고 나서, drawable/btn_keyboard_key.xml에 <item android:state_pressed="true"
android:drawable="@drawable/btn_keyboard_key_pressed" />
<item
android:drawable="@drawable/btn_keyboard_key_normal" /> 을 넣어서 키가 눌렸을 때와 기본 이미지를 수정하였습니다.
그런데, 키를 눌렀을 때 보이는 큰 버튼 이미지는 어떤 android:속성이름을 사용해야 하는지 알고 싶습니다. 그리고, xml에서 android: 뒤에 붙는 속성이름들을 나열해서 보여주는 곳이 있나요?



