Hello,

I am trying to create my own keyboard because I need it in one of my
application. The problem is when I can seem to get the KeyboardView to
get displayed without an exception.
I tried two ways:
1.
     - I had the KeyboardView in my main.xml layout file:
       ...
       <LinearLayout ...
       ...
                    <android.inputmethodservice.KeyboardView
                    android:id="@+id/keyboard"
                    android:layout_width="120dip"
                    android:layout_height="120dip"
                    android:keyTextSize="10px"
                    android:labelTextSize="10px"
                    android:keyBackground="@drawable/icon"
                    android:popupLayout="@+layout/keyboard"
                    />
      ...
    - in the layout folder I wrote the keyboard layout file:
                   <?xml version="1.0" encoding="UTF-8"?>
                   <Keyboard
                          xmlns:android="http://schemas.android.com/
apk/res/android"
                          android:id="@+id/mykeyboard"
                          android:keyWidth="50px"
                          android:keyHeight="50px"
                          android:horizontalGap="2px"
                          android:verticalGap="2px" >
                                   <Row android:keyWidth="32px" >
                                             <Key
android:keyLabel="A" />
                                   </Row>
                   </Keyboard>
    - in onCreate I had:
                  setContentView(R.layout.main);

2.
   - I commented the keyboardview from main.xml , got the LinearLayout
object from main.xml and tryed to add KeyboardView from code:
               myLayout.addView(new KeyboardView(getApplicationContext
(), null));

In any case I got the same IllegalArgumentException. I think somehow
the KeyboardView tries to grab more pixels than it got. (
http://developer.android.com/reference/android/graphics/Bitmap.html#createBitmap(int,%20int,%20android.graphics.Bitmap.Config)
)


11-02 11:49:22.638: ERROR/AndroidRuntime(340): Uncaught handler:
thread main exiting due to uncaught exception
11-02 11:49:22.669: ERROR/AndroidRuntime(340):
java.lang.IllegalArgumentException: width and height must be > 0
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
android.graphics.Bitmap.nativeCreate(Native Method)
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
android.graphics.Bitmap.createBitmap(Bitmap.java:468)
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
android.inputmethodservice.KeyboardView.onBufferDraw(KeyboardView.java:
588)
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
android.inputmethodservice.KeyboardView.onDraw(KeyboardView.java:579)
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
android.view.View.draw(View.java:6536)
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
android.view.ViewGroup.drawChild(ViewGroup.java:1526)
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
android.view.ViewGroup.dispatchDraw(ViewGroup.java:1256)
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
android.view.View.draw(View.java:6539)
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
android.view.ViewGroup.drawChild(ViewGroup.java:1526)
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
android.view.ViewGroup.dispatchDraw(ViewGroup.java:1256)
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
android.view.View.draw(View.java:6539)
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
android.view.ViewGroup.drawChild(ViewGroup.java:1526)
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
android.view.ViewGroup.dispatchDraw(ViewGroup.java:1256)
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
android.view.View.draw(View.java:6539)
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
android.widget.FrameLayout.draw(FrameLayout.java:352)
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
android.view.ViewGroup.drawChild(ViewGroup.java:1526)
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
android.view.ViewGroup.dispatchDraw(ViewGroup.java:1256)
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
android.view.View.draw(View.java:6539)
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
android.widget.FrameLayout.draw(FrameLayout.java:352)
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
com.android.internal.policy.impl.PhoneWindow$DecorView.draw
(PhoneWindow.java:1830)
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
android.view.ViewRoot.draw(ViewRoot.java:1348)
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
android.view.ViewRoot.performTraversals(ViewRoot.java:1113)
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
android.view.ViewRoot.handleMessage(ViewRoot.java:1632)
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
android.os.Handler.dispatchMessage(Handler.java:99)
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
android.os.Looper.loop(Looper.java:123)
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
android.app.ActivityThread.main(ActivityThread.java:4310)
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
java.lang.reflect.Method.invokeNative(Native Method)
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
java.lang.reflect.Method.invoke(Method.java:521)
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run
(ZygoteInit.java:860)
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
11-02 11:49:22.669: ERROR/AndroidRuntime(340):     at
dalvik.system.NativeStart.main(Native Method)

-- 
You received this message because you are subscribed to the Google
Groups "Android Beginners" group.
To post to this group, send email to android-beginners@googlegroups.com
To unsubscribe from this group, send email to
android-beginners+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-beginners?hl=en

Reply via email to