使用软键盘添加和删除Edittexts

时间:2015-04-30 15:23:41

标签: android

我有editText和按钮"添加"和" del"在listView的每个项目中。因此,用户可以添加新的editTexts并删除旧的。

Button占据了很多位置。我想删除它们并使用softKeyobord whith按钮"添加"和" del"。在软键盘中创建自己的按钮是真的吗? 我的目标Sdk版本=" 19"。 在这种情况下,setOnKeyListener不能工作:

@Override
public View getView(final int position, View convertView, ViewGroup parent) {
    // TODO Auto-generated method stub
    View view = convertView;


    if (view == null) {
        view = lInflater.inflate(R.layout.itemadd, parent, false);

    ViewHolder viewHolder = new ViewHolder();
    viewHolder.name=(TextView) view.findViewById(R.id.addtospintextView1);
    viewHolder.value=(EditText) view.findViewById(R.id.addtospineditText1);

    view.setTag(viewHolder);
    }

    final ViewHolder holder = (ViewHolder) view.getTag();

    holder.value.setOnKeyListener(new OnKeyListener() {

        @Override
        public boolean onKey(View v, int keyCode, KeyEvent event) {
            // TODO Auto-generated method stub
            Log.d(LOG_TAG,"Hi");
            return true;
        }


    });


    return view;
}



static class ViewHolder {
      TextView name;
      EditText value;
    }

}

另外,我不知道自己的软键盘按钮在不同的Android手机上是如何工作的......

1 个答案:

答案 0 :(得分:0)

您不应该使用如此多的按钮来阻碍您的屏幕:您应该为 ContextMenu 注册您的项目。

ContextMenu 出现在foating窗口(在HoneyComb 3.0之前的API上)和上下文ActionBar 中,它覆盖Activity的ActionBar以显示上下文菜单的项目。然后屏幕处于上下文操作模式

如果为ContextMenu注册ListView,它将自动注册其项目。