无法在ExpandableListView子项中键入EditText

mel*_*gem 2 android types expandablelistview android-edittext

我正在使用expandableList,并且每个孩子都有其edittext输入一个数字......当按下孩子时,edittext显示.如果不是,则edittext保持不可见..但是当我点击edittext时,键盘显示数字(因为我设置类型输入:数字)仅1秒.之后它转向普通键盘.即使它支持普通键盘,仍然,我不能在编辑文本上键入...这是我的代码

 public View getChildView(int groupPosition, int childPosition,
            boolean isLastChild, View convertView, ViewGroup parent) {
        // TODO Auto-generated method stub
        final String childText = (String) getChild(groupPosition, childPosition);
        if (convertView == null) {
            LayoutInflater inflater = (LayoutInflater) this.context
                    .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            convertView = inflater.inflate(
                    R.layout.konsumsi_user_expand_listchild, null);
        }
        final TextView listChild = (TextView) convertView
                .findViewById(R.id.lblListItemKonsumsi);
        listChild.setText(childText);
        final EditText kolomTakaran = (EditText) convertView
                .findViewById(R.id.kolomTakaran);
        listChild.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                kolomTakaran.setVisibility(View.VISIBLE);

                if (childText == "kol") {
                    takaran = 50;
                } else {
                    takaran = 0;
                }
                kolomTakaran.addTextChangedListener(new TextWatcher() {

                    @Override
                    public void onTextChanged(CharSequence s, int start,
                            int before, int count) {
                        // TODO Auto-generated method stub
                        Toast.makeText(context, "a", Toast.LENGTH_LONG).show();
                    }

                    @Override
                    public void beforeTextChanged(CharSequence s, int start,
                            int count, int after) {
                        Toast.makeText(context, "b", Toast.LENGTH_LONG).show();
                        // TODO Auto-generated method stub

                    }

                    @Override
                    public void afterTextChanged(Editable s) {
                        // TODO Auto-generated method stub
                        Toast.makeText(context, "c", Toast.LENGTH_LONG).show();
                        takaran = Integer.parseInt(s.toString());
                    }
                });
            }
        });

        return convertView;
    }
Run Code Online (Sandbox Code Playgroud)

这是我的孩子xml

    <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="55dp" >

    <TextView
        android:id="@+id/lblListItemKonsumsi"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:paddingBottom="5dp"
        android:paddingLeft="25dp"
        android:paddingTop="5dp"
        android:textSize="14dp" />

    <EditText
        android:id="@+id/kolomTakaran"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:hint="isisisisisisi"
        android:inputType="number"
        android:textSize="14dp"
        android:visibility="invisible" />

</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

希望有人可以帮助 ..谢谢:D .. 抱歉我的英语不好

ASP*_*ASP 13

这些设置是必需的:

在UI代码中:

expListView.setDescendantFocusability(ViewGroup.FOCUS_AFTER_DESCENDANTS);
Run Code Online (Sandbox Code Playgroud)

在ActivityManifest.xml中:

activity android:name=".YourActivity" android:windowSoftInputMode="adjustPan"
Run Code Online (Sandbox Code Playgroud)