1

私は を持ってListViewonClicklListenerます。

発言権がListViewありますLayout/res/listitem_a

任意のリストアイテムの後onClickeventで、そのリストアイテムのみのレイアウトを変更して言いたい/res/listitem_b..

どのように進めればよいかについての助け。

4

2 に答える 2

0

ViewFlipper を行のレイアウトとして使用できます。ViewFlipper を使用すると、必要な数のレイアウトを指定して、何かが発生したときにそれらを切り替えることができます (クリック イベントなど)。ViewFlipperに関する優れたチュートリアルを次に示します。

さらに、カスタム アダプターを実装し、BaseAdapter を拡張し、getView メソッドをオーバーライドする必要があります。

@Override
public View getView(int position, View view, ViewGroup parent) {
    if (view == null) {
        LayoutInflater inflater = (LayoutInflater) context
                .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        view = inflater.inflate(R.layout.your_row_layout, null);  //this will inflate the layout into each row
    }

    //from here on, assign the information to display to the layout widgets

私があなたを助けたことを願っています。

于 2012-10-28T17:21:33.883 に答える
0

BaseAdapter を使用し、getView 呼び出しで変更します。

public View getView(int position, View convertView, ViewGroup parent) {
        ViewHolder holder;

        if (convertView == null) {
            convertView = mInflater.inflate(R.layout.custom_layout, null);
            // Creates a ViewHolder and store references to the two children views
            // we want to bind data to.
            holder = new ViewHolder();
            holder.text = (TextView) convertView.findViewById(R.id.text);

            convertView.setTag(holder);
        } else {
            holder = (ViewHolder) convertView.getTag();
        }

        // Change text size
        holder.text.setTextAppearance(context,R.style.customStyle);

        return convertView;
    }

    static class ViewHolder {
        TextView text;
    }

また、 getView 呼び出しで位置変数を使用して、特定の行を変更できます。この助けを願っています!!!

于 2012-10-27T12:17:10.687 に答える