我正在使用android SDK 2.2在Eclipse构建ID 20090920-1017中开发应用程序并在Google Nexus One上进行测试.出于以下测试的目的,我在非根电话上使用IME"Android键盘".
我有一个EditText小部件,它表现出一些非常奇怪的行为.我可以输入文字,然后按"del"键删除该文字; 但在输入'space'字符后,"del"键将不再删除该空格字符前的字符.
一个例子说千言万语,所以请考虑以下两个非常简单的应用......
示例1:LinearLayout小部件中的EditText:
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);
}
}
运行上面的应用程序,输入文本"编辑示例",然后按"del"键几次,直到整个句子被删除.一切正常.
现在考虑示例2:Gallery小部件中的EditText:
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 …Run Code Online (Sandbox Code Playgroud)