7

各parentViewにEditText(およびtextview)があるExpandableListViewがあります。EditText をレイアウトに追加すると、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;
    } 
4

1 に答える 1

1

問題は、EditText のデフォルトのフォーカス可能性が原因です。それらはデフォルトでフォーカスできるため、これにより親ビューがフォーカスされなくなります。したがって、あなたがしなければならないことは、次を使用して EditText のフォーカス機能を削除することです。

andorid:focusable="false".

同様に、親にボタンがある場合は、 focusable false を設定すると役立ちます。これは、親ビューがクリックされるようにする唯一の方法です。

于 2012-04-10T04:35:53.597 に答える