带有EditText的ExpandableListView

use*_*920 7 android expandablelistview android-edittext

我有一个ExpandableListView,其中每个parentView都有一个EditText(和textview).当我将EditText添加到Layout时,它将不再允许我单击或展开ExpandableListView,所有焦点都转到EditText.有没有办法让EditText和ExpandableListView本身都可以点击?我希望能够单击expandableListView来展开列表,并且EditText能够输入文本.

谢谢

编辑:添加了我的组视图的代码

    public View getGroupView(int groupPosition, boolean isExpanded,
                             View convertView, ViewGroup parent) {

        if (convertView == null) {
            LayoutInflater inflater =  (LayoutInflater) myContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            convertView = inflater.inflate(R.layout.group_row, null);
        }

        TextView playerName = (TextView) convertView.findViewById(R.id.playerName);
        playerName.setText(groupElements[groupPosition]);
        final EditText holeScore = (EditText) convertView.findViewById(R.id.score);
        holeScore.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Toast.makeText(scoreCard.this, "On CLick", Toast.LENGTH_SHORT).show();
                holeScore.setFocusable(true);
            }
        });
        return convertView;
    } 
Run Code Online (Sandbox Code Playgroud)

And*_*lva 1

问题是由于 EditText 的默认 focusablitiy 造成的。由于它们默认能够获得焦点,这将使您的父视图失去焦点。因此,您要做的就是使用以下方法删除 EditText 的焦点功能:

andorid:focusable="false".
Run Code Online (Sandbox Code Playgroud)

同样,如果您的父级中有任何按钮,将 focusable false 设置为它也会有所帮助。这是使父视图被点击的唯一方法。

  • 这允许我扩展我的列表,但现在当我单击 EditText 时,软键盘不会出现......我该如何解决这个问题? (2认同)