Hi,

I am developing an application in Eclipse build ID 20090920-1017 using
android SDK 2.2 and testing on a Google Nexus One. For the purposes of
the tests below I am using the IME "Android keyboard" on a non-rooted
phone.

I have an EditText widget which exhibits some very strange behavior. I
can type text, and then press the "del" key to delete that text; but
after I enter a 'space' character, the "del" key will no longer remove
characters before that space character.

An example speaks a thousand words, so consider the following two
incredibly simple applications...

Example 1: An EditText in a LinearLayout widget:

--------------------------------------------------------------------------
package com.example.linear.edit;

import android.app.Activity;
import android.os.Bundle;

import android.view.ViewGroup.LayoutParams;
import android.widget.EditText;
import android.widget.Gallery;
import android.widget.LinearLayout;

public class LinearEdit extends Activity
{
    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);

        LinearLayout layout = new
LinearLayout(getApplicationContext());
        layout.setLayoutParams(new
Gallery.LayoutParams(Gallery.LayoutParams.MATCH_PARENT,
Gallery.LayoutParams.MATCH_PARENT));

        EditText edit = new EditText(getApplicationContext());
        layout.addView(edit, new
LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT,
LayoutParams.WRAP_CONTENT));

        setContentView(layout);
    }
}
--------------------------------------------------------------------------

Run the above application, enter text "edit example", then press the
"del" key several times until the entire sentence is deleted.
Everything Works fine.

Now consider example 2: An EditText in a Gallery widget:

--------------------------------------------------------------------------
package com.example.gallery.edit;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.view.ViewGroup.LayoutParams;
import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.Gallery;
import android.widget.LinearLayout;

public class GalleryEdit extends Activity
{
    private final String[] galleryData = {"string1", "string2",
"string3"};

    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);

        Gallery gallery = new Gallery(getApplicationContext());

        gallery.setAdapter(new ArrayAdapter(getApplicationContext(),
android.R.layout.simple_list_item_1, galleryData)
        {
            @Override
            public View getView(int position, View convertView,
ViewGroup parent)
            {
                LinearLayout layout = new
LinearLayout(getApplicationContext());
                layout.setLayoutParams(new
Gallery.LayoutParams(Gallery.LayoutParams.MATCH_PARENT,
Gallery.LayoutParams.MATCH_PARENT));

                EditText edit = new
EditText(getApplicationContext());
                layout.addView(edit, new
LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT,
LayoutParams.WRAP_CONTENT));

                return layout;
            }
        });

        setContentView(gallery);
    }
}
--------------------------------------------------------------------------

Run the above application, enter text "edit example", then press the
"del" key several times. If you are getting the same problem as me
then you will find that you can't deleted past the 'space' character.
All is not well.

If anyone could shed some light on this issue I would be most
appreciative.

Regards

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to